问题标签 [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.
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。
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。烦人,但至少它完成了工作。
scala - 使用 xsbt-web-plugin 不打包 WAR 文件的多项目构建
我有多个项目,其中一个需要打包为 WAR 文件。但是,它被打包为 JAR 文件。这是我的构建文件:
scala - 使用 xsbt-web-plugin 和 JRebel 时,SBT 不会在 webapp 中传播更改
设置如下:
- 提升网
- xsbt 网络插件
- sbt-jrebel 插件
- 叛逆者
我的静态网页文件(html 等)在/src/webapp
我跑
问题:即使 SBT 检测到静态文件中的更改,以及指示它也看到它们的 JRebel 日志,这些更改也不会传播到/target/webapp
. 重新编译和重新加载 scala 文件可以正常工作。
构建.sbt
scala - SBT 依赖项中的“容器”和“提供”有什么区别?
在阅读build.sbt
许多 Web 应用程序时,经常会看到标记为 的依赖项"provided"
,例如sbt-assembly 文档:
“org.apache.spark”%%“spark-core”%“0.8.0-incubating”%“提供”
我在 SBT 文档中找不到任何提及,但是Maven 文档说明了以下内容:
- 假如
这很像 compile,但表明您希望 JDK 或容器在运行时提供依赖项
然而,有时我也看到"container"
了相同的位置,比如在这个 build.sbt中。这是同一件事吗?
sbt - 具有系统属性的 xsbt 分叉 jvm
我注意到在最新版本的 xsbt 中,码头容器被分叉并且传递系统属性不再起作用。
我正在寻找一种简单的方法来在启动 sbt 时通过系统属性传递端口号,以便为码头容器设置端口。目前尚不清楚这是否可能。
另外,我在本地开发中遇到了问题,因为现在无法将选项传递给容器。如果无法做到这一点,我不确定如何快速方便地更改设置。分叉的java进程无法继承或传递系统道具是否有原因?
也只是好奇首先需要容器在分叉进程中运行的原因是什么。
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 岁),否则就是给你孩子的苏打水!:-)
sbt - 需要为 xsbt-web-plugin 容器提供额外的 jars
我正在尝试使用xsbt-web-plugin
. 我的战争本身不包含tomcat-jdbc-pool
jar 和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]]
sbt - xsbt-web-plugin 如何在不杀死 sbt 控制台的情况下停止容器
我正在使用xsbt-web-plugin
v4.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 的情况下启动和停止容器?