问题标签 [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 回答
1048 浏览

scala - sbt-web 资产输出目录设置

设想

我有一个相当简单的 Scalatra 项目,其中包含 Scala.js 和 LESS,我需要为其创建一个 sbt 构建配置。项目分为三个部分:jvm、js、共享代码。

我当前的构建配置使用 xsbt-web-plugin 进行 WAR 打包,我想设置 sbt-web 以便它可以处理 LESS 源的处理。

问题

使用当前配置,当我运行 package 命令时,sbt-web 将资产放在WEB-INF/classes/main/META-INF/resources/webjars/dataretrieverjvm/0.1.0-SNAPSHOT中。我想将它们放在WEB_INF/public中,但我不知道如何实现这一点。

这就是我的 Build.scala 目前的样子:

部分解决方案

这样资产被复制到WEB-INF/public这很棒,但遗憾的是 sbt-web 仍然将它们复制到WEB-INF/classes

0 投票
2 回答
230 浏览

scala - Sbt-LESS: TypeError: [object Object] 不是函数,它是对象

在 Play 项目中将 Sbt-less 从 1.0.6 更新到 1.1.0 后,当我尝试执行以下操作时收到此错误输出git push heroku master

该项目本身在我正在编码的机器上运行良好。我试过heroku run "sbt clean-files"似乎没有效果。我在某处读到删除/target文件夹也可能有帮助,但是当我尝试从 Heroku 的 bash 终端中删除它们时,它并没有做出改变。任何建议都会有所帮助,在此先感谢您!

编辑:我想出了一个相当明显的解决方法(你们中的很多人可能已经知道),但是每次上传到 Heroku 时,您都可以简单地恢复到 sbt-less 1.0.6。烦人,但至少它完成了工作。

0 投票
1 回答
160 浏览

scala - 使用 xsbt-web-plugin 不打包 WAR 文件的多项目构建

我有多个项目,其中一个需要打包为 WAR 文件。但是,它被打包为 JAR 文件。这是我的构建文件:

0 投票
1 回答
45 浏览

scala - 使用 xsbt-web-plugin 和 JRebel 时,SBT 不会在 webapp 中传播更改

设置如下:

  • 提升网
  • xsbt 网络插件
  • sbt-jrebel 插件
  • 叛逆者

我的静态网页文件(html 等)在/src/webapp

我跑

问题:即使 SBT 检测到静态文件中的更改,以及指示它也看到它们的 JRebel 日志,这些更改也不会传播到/target/webapp. 重新编译和重新加载 scala 文件可以正常工作。

构建.sbt

0 投票
1 回答
1815 浏览

scala - SBT 依赖项中的“容器”和“提供”有什么区别?

在阅读build.sbt许多 Web 应用程序时,经常会看到标记为 的依赖项"provided",例如sbt-assembly 文档

“org.apache.spark”%%“spark-core”%“0.8.0-incubating”%“提供”

我在 SBT 文档中找不到任何提及,但是Maven 文档说明了以下内容:

  • 假如

这很像 compile,但表明您希望 JDK 或容器在运行时提供依赖项

然而,有时我也看到"container"了相同的位置,比如在这个 build.sbt中。这是同一件事吗?

0 投票
1 回答
496 浏览

jetty - SBT - 如何为本地运行的 Jetty 配置 ssl?

我需要为我的项目实现本地 ssl 以实现 OAuth。我通读了 xsbt-web-plugin 页面(此处)。我按照此处的建议创建了密钥库。

我让它使用我在这里找到的码头配置文件为 https 服务。这是它的样子:

我的 SBT 配置如下所示:

现在的问题是服务器为每个请求提供 404:

在此处输入图像描述

控制台上也有此警告:

码头:8.1.7/电梯:2.6.2

请指教。谢谢你。

0 投票
1 回答
103 浏览

sbt - 具有系统属性的 xsbt 分叉 jvm

我注意到在最新版本的 xsbt 中,码头容器被分叉并且传递系统属性不再起作用。

我正在寻找一种简单的方法来在启动 sbt 时通过系统属性传递端口号,以便为码头容器设置端口。目前尚不清楚这是否可能。

另外,我在本地开发中遇到了问题,因为现在无法将选项传递给容器。如果无法做到这一点,我不确定如何快速方便地更改设置。分叉的java进程无法继承或传递系统道具是否有原因?

也只是好奇首先需要容器在分叉进程中运行的原因是什么。

0 投票
1 回答
135 浏览

java - 如何从 Macbook 中完全删除 jdk 1.8?Scala Webapps 项目

感谢您阅读我的问题。我已经为此苦苦挣扎了8个多小时。在我的 macbook 上,我安装了 JDK 6、7 和 8,其中 8 是默认的。今天早上我需要创建一个 scala/sbt webapp 项目(打包到 .war),以便在 tomcat7 上部署一个简单的测试应用程序。

唯一要求:项目必须能够在 JRE 1.7 和 Tomcat 7 上运行

由于 Unsupported major.minor 以及版本控制和糟糕的 giter8 模板的无数其他问题,我无法做到这一点。

这是我目前的困境:

遵循“从头开始”部分中的所有步骤,直到sbt jetty:start jetty:join. (跳到最后一个代码片段的错误): https ://github.com/earldouglas/xsbt-web-plugin/blob/master/docs/3.0.x.md

这是我的java 主页和版本

这是我的build.sbt

这是我的项目/build.sbt

这是我的项目/build.properties

servlet.scala 和 web.xml 与链接中的完全相同。

这是我的项目结构

这是我存在的祸根

**有人可以指出我有什么问题吗?** 我完全删除了 java 1.8 jdk 目录。因为它说version 52 (jdk 8)我不知道​​它来自哪里。jdk 7 应该是51,jdk 6 应该是50

如果你在丹佛,我会给你买啤酒(如果你超过 21 岁),否则就是给你孩子的苏打水!:-)

0 投票
1 回答
127 浏览

sbt - 需要为 xsbt-web-plugin 容器提供额外的 jars

我正在尝试使用xsbt-web-plugin. 我的战争本身不包含tomcat-jdbc-pooljar 和javax-servlet-api. 我尝试使用container配置。但是 sbt 抱怨配置不存在。如果我使用provided配置,webapp-runner则会失败。

我确定我错过了一些东西。但想不通。

WARNING: Failed to register in JMX: [javax.naming.NamingException: Could not load resource factory class [Root exception is java.lang.ClassNotFoundException: org.apache.tomcat.jdbc.pool.DataSourceFactory]]

0 投票
1 回答
70 浏览

sbt - xsbt-web-plugin 如何在不杀死 sbt 控制台的情况下停止容器

我正在使用xsbt-web-pluginv4.0.1。启动sbt控制台后,该tomcat:start命令工作正常。但是我不知道如何运行tomcat:stop。当我按 时Ctrl-C,我退出控制台,但我认为 tomcat 继续在后台运行。当我按下 时Ctrl-D,我看到了消息waiting for server to shutdown然后就sbt存在了。无论哪种情况,我都被迫sbt再次启动控制台。

我在中添加了以下 2 行build.sbt

我的这条线global.sbt

如何在不退出 sbt 的情况下启动和停止容器?