问题标签 [xsbt-web-plugin]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
700 浏览

scala - 如何配置 build.sbt 以便 xsbt-web-plugin a 创建 war 文件而不进行压缩?

我正在使用带有 sbt 的 Scala 2.10.1 将我的 webapp 打包为一个 war 文件。出于高效 rsync 增量的目的,我希望将 war 打包为 .war 文件,但不进行 zip 压缩。我只需要知道如何为此配置我的构建。

更新:
所有这些插件文档都假定所有这些关于语法如何工作以及如何将任务组合成新任务等的知识。我什至不知道如何创建一个执行打包然后命令的新任务。到目前为止,没有一个答案具体说,“这就是你所做的......”

为了清楚起见,这就是我所要求的:

我需要一个执行此操作的任务“packnozip”:

1)运行“包”

2)运行shell命令:

p>

所以我要说的是我想在 sbt 控制台中输入“packnozip”并让它执行 #1 然后 #2。

现在我只是手动做#2,如果它可以自动化的话,这似乎很愚蠢。还看着一个 30MB 的文件被 rsync b/c 完全反感,当一个 34MB 的未压缩文件仅多出 13% 的数据,并且需要几分之一秒的时间来发送 b/c 的有效差异时,它是不可区分的似乎很愚蠢,更不用说“-z”无论如何都会压缩传输。

0 投票
1 回答
883 浏览

sbt - 配置 xsbt-web-plugin 以打开 JMX 并允许使用 JConsole/VisualVM 进行 MBean 检查

如何配置 xsbt-web-plugin 以打开 JMX 端口,以便我可以使用 Jconsole 或 VisualVM 检查 MBean?

在我当前的设置中,VisualVM 没有显示“无法建立 JMX 连接”的 MBean。

我猜想要的结果是 xsbt-web-plugin 在以下行中调用码头:

0 投票
1 回答
137 浏览

scala - SBT Xsbt-web 插件找不到注释

我创建了一个氛围框架应用程序。当我使用 Xsbt container:start 时,它不会扫描程序集并在我的类上找到注释。

但是,当我将项目打包为war并部署到tomcat时,它可以完美运行。

看起来存在类路径问题,但我不确定如何开始诊断。通过谷歌搜索或修补,我没有找到太多

如果我手动将类复制到 webapp/WEB-INF/classes 中,将库复制到 webapp/lib/ 中,则应用程序可以工作,但气氛的调试却没有。

我知道 sbt 正在 /home/me/.ivy2 中添加我的依赖项

0 投票
1 回答
1534 浏览

scala - 使用 Build.scala 文件时覆盖码头端口设置

我正在将构建从build.sbt移动到Build.scala文件,并且在使用xsbt-web-plugin时无法覆盖码头端口设置。使用build.sbt时,我可以使用以下方法设置属性:

在我的 .scala 文件中,我尝试了一些东西,但码头总是从 8080 开始,例如在我的BuildSettings对象中:

我还尝试在Build.scala的项目定义中覆盖它:

但它总是从 8080 开始。在这两种情况下,运行都show port显示 8081。

0 投票
1 回答
148 浏览

sbt - SBT 控制台缺少 Web 容器的类路径

将 SBT 与xsbt-web-plugin一起使用,当我转到控制台 ( sbt console) 时,我无法访问src/main/webapp通常在容器类路径上的任何内容。

上下文是:我正在尝试获取在 webapp 和单元测试中运行的某些代码,并在控制台中运行它。一切都很好,直到我到达加载存储在中的视图模板之一的代码,src/main/webapp它希望在类路径中找到它。

0 投票
1 回答
372 浏览

eclipse - 在未找到 heroku 错误插件上部署 scalatra 应用程序

我遵循了在 Heroku [lien] http://www.scalatra.org/guides/deployment/heroku.html#toc_177上部署 Scalatra 应用程序的指南, 我收到以下错误:

我的 SBT 版本是 0.13.0..

有关信息,我是 scalatra 和 sbt 的新手,请你帮帮我..

0 投票
2 回答
727 浏览

servlets - 在使用 Jetty 9 的 SBT 项目中,无法使用 @WebServlet 注释连接 servlet

我在处理已转换为使用 SBT(之前纯粹基于 Eclipse)的现有 Java 项目时遇到了这个问题。org.my.FooServlet即使 Eclipse(仍在使用 Eclipse 和 sbteclipse)报告映射/FooServletorg.my.FooServlet.

因此,为了排除一些可能源于将项目转换为使用 SBT 的问题(例如,一些缺少的依赖项,或者隐藏或看似不相关的(错误)配置问题),我继续创建了一个新的 SBT 项目来尝试重现问题的复杂性最小。所以我目前有以下配置/代码/输出,但仍然遇到问题:

container:start输出:

build.sbt

project/plugins.sbt

src/main/java/webtest/TestServlet.java

src/main/webapp/WEB-INF/web.xml:(完全删除它没有区别)

每当我编辑和保存两个代码文件中的任何一个时,都会重新加载容器,并且文件已被编译,因此至少 SBT 正在拾取它们;现在的问题是,为什么不是 Jetty。我也尝试过(在原始项目中,而不是测试虚拟项目中)将所有类从下面复制target/scala-2.10/classessrc/main/webapp/WEB-INF/classes无济于事。

0 投票
1 回答
2855 浏览

jetty - 设置 WebAppContext.configurationClasses 时,jetty-web.xml 中的 java.lang.reflect.InvocationTargetException

我试图添加org.eclipse.jetty.annotations.AnnotationConfiguration到 but 的configurationClasses属性org.eclipse.jetty.webapp.WebAppContext(使用 调用 Jetty 时sbt containe:start),得到:

我尝试将 a 更改<Set ...>为 a <Call name="setConfigurationClasses">(同时具有 theString[]List<String>变体)但无济于事 - 每次仍然得到相同的反射异常。

jetty-web.xml的如下:

答案:https://github.com/JamesEarlDouglas/xsbt-web-plugin/blob/master/src/jetty-9/scala/Jetty9Runner.scala决定,xsbt-web-plugin 将配置属性设置WebAppContext为硬编码值,因此无论 XML 配置中有什么内容,它都可能会被忽略(或者显然会导致错误)。

0 投票
1 回答
924 浏览

jetty - 使用 Jetty 为 SBT scalatra webapp 创建一个可执行 jar

我使用 SBT 编写了一个小型 scalatra webapp。Webapp 配置了默认的 jetty 插件。现在我想从该 scalatra webapp 创建一个可执行 jar,它应该通过简单地执行 jar 来运行。我正在尝试将 jar 与程序集插件捆绑并创建 jar 但无法使其正常工作。

有人可以建议我如何解决这个问题。

0 投票
1 回答
396 浏览

sbt - 如何为容器提供不同的 webapp 资源:SBT 中的启动和打包任务

我有一个带有纯 JS 前端和 Scala 后端的 Web 应用程序。我想在我的构建管道中使用 Grunt 将src/main/webapp处理为目标dist/webapp目录,其中包含连接/缩小的 js 和 html 文件、编译的 sass 表等。我还想保留原始 JS 和 HTML 文件以进行本地测试使用 container:start 任务,而 package 任务将使用 Grunt 处理的资源构建我的 WAR 文件。当我在 SBT 中使用以下设置时:

编译中的 webappResources <<= baseDirectory { bd => Seq(bd / "dist" / "webapp") }

然后我实现了第二个目标——我的 WAR 是使用dist/webapp中的 webapp 资源构建的。但是,在本地开发期间使用 container:start 时,我会绑定到同一个目录。有没有办法为不同的目的定义不同的目录?