问题标签 [sbt-assembly]
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.
sbt - 如何在单个任务的多模块构建中将一些模块“打包”到 jars 和其他模块到战争?
我使用package
任务(来自xsbt-web-plugin)将项目打包到战争中,并使用assembly
任务(来自sbt-assembly)将项目打包到 jar 中。
我有一个多模块构建,一些模块被打包成战争,一些被打包成罐子。
我想设置构建以执行assembly
任务并且:
- Jar 模块打包成 jar 文件
- 战争模块被打包成战争文件
如何在执行package
任务的同时执行战争项目的assembly
任务?
scala - parboiled2 和 Spray 导致跨版本后缀冲突
我正在尝试将 parboiled2 作为依赖项添加到我的项目中,并按照计算器示例进行操作,但它与喷雾冲突。
我当前的build.sbt
文件包括:
当我添加
我明白了
一些谷歌搜索也是如此,并且像往常一样,人们建议使用exclude
SBT 的指令(我认为这在逻辑上没有意义,因为它不可避免地会导致像ClassNotFoundException
and之类的问题NoSuchMethodError
)。尽管如此,我还是尝试了:
assembly
当我尝试跑步时,我得到了惊喜
我还收到更多错误:
如果我注释掉 Spray 依赖项(和代码),我可以使用 Calculator 示例成功组装一个 jar。
对于我使用 parboiled2 来说,这是一个主要的表演障碍。exclude
除了指令之外还有其他方法可以使这些东西起作用吗?有没有人有一个可以使用 Spray 和 parboiled2 的构建文件?如果有人设法用 onejar 或 ProGuard 绕过依赖地狱,如果他们能解释一下如何,我会很高兴的。
更新:
我的构建文件:
插件文件:
斯卡拉 2.11
似乎“简单地”移动 2.11 可以解决这个问题,但如果有一些其他库还没有准备好 2.11,这并不总是那么容易。尽管如此,我还是尝试了它,第二次我添加了 parboiled2 作为依赖项,它再次破坏了我的构建,叹息,这是新问题:Parboiled2 导致“加载类文件'Prepender.class'时检测到缺少或无效的依赖项”
scala - 如何在 sbt asssembly 中包含测试类和测试依赖项
我需要使用 sbt 程序集打包我的测试类、资源以及测试依赖项。
这个问题sbt-assembly : include test classes没有帮助 - test:assembly 仍然没有生成包含任何所需类的 jar。
请注意,我的设置当前如下所示:
FooBuild.scala:
这是关于子项目的foo-cucumber
:
即使我(Test, assembly)
在上面的设置中附加,我也只会得到一个不包含测试类或依赖项的 jar(其名称不是指定的,而是全名,带有版本),无论我调用sbt foo-cucumber/test:assembly
还是sbt foo-cucumber/assembly
如何获得一个包含所有内容的 jar(编译和测试类和依赖项)
scala - scala sbt 程序集“没有主要清单属性”
我在 sbt 中使用组装插件来组装我的项目。但是通过“java -jar xx.jar”运行时会发生错误 -
“没有主要清单属性”。
我认为这是因为我的目录中有两个文件,src/main/scala/
每个文件都有一个扩展对象,Application
这意味着项目中有两个主要条目。但是我需要两个应用程序,一个是服务器,另一个是测试客户端。
如何two-main-entry
在 scala sbt 中处理这个问题。提前致谢。
scala - sbt-assembly:pom.properties 的重复数据删除错误
我正在使用 sbt 0.13.7 和 sbt-assembly 0.12.0。
以下是“sbt 汇编”期间的错误消息:
这是基于https://github.com/sbt/sbt-assembly#merge-strategy上的 README 的 build.sbt 文件的相关部分:
我应该怎么做?
谢谢。
scala - how to share vals between build.sbt and assembly.sbt
I'm using two files for my build: build.sbt and assembly.sbt (for building fat jars using sbt-assembly plugin). I have some vals defined in build.sbt. Let's just say I'm doing some custom tasks that depend on them. However, I noticed that vals defined in build.sbt are not visible in assembly.sbt. So I end up duplicating code in those two files. How do I configure it such that assembly.sbt can see the vals in build.sbt?
Thanks!
scala - 升级后无法使用 specs2 编译 ScalaCheck
我曾经使用:
效果很好,然后我将依赖项升级到我认为是最新的:
根据http://etorreborre.github.io/specs2/应该是正确的
但现在ScalaCheck
不被承认为成员org.specs2
我已经完成sbt clean
并被常春藤缓存删除rm -r ~/.ivy2/cache
scala - Parboiled2 导致“加载类文件‘Prepender.class’时检测到缺失或无效依赖项”
所以我最近几周一直在尝试使用 parboiled2,它可能是我一生中遇到的最难添加到构建中的依赖项。我当前的错误是 compile sbt assembly
) 错误:
似乎根本不可能让 Spray 和 Parboiled2 一起玩得很好。
我已经尝试sbt clean
并删除了我的target
目录。我的构建文件基本上是这样的:
我sbtVersion
的是0.13.6,我的sbt-assembly
版本是0.12.0
在升级到 2.11 并升级我的 specs2 依赖项之前,我得到了:parboiled2和 Spray 导致跨版本后缀冲突
scala - 使用 sbt 程序集构建 Scala 代码,失败
我在 Windows 机器上使用 sbt 0.13.7 和 Scala 2.11.4 将我的代码编译成一个胖 jar,我最终想在 Linux 机器上运行。
下面是我的 build.sbt 文件:
我面临的错误是:
java - 如何以在 sbt-assembly 之后可以访问的方式在我的资源目录中打开文件?
我的 Scala 应用程序使用了 Tototoshi 的 ScalaCSV 库,因此我需要打开一个放在/src/main/resources/data.csv
. 我以这种方式访问它:
当我在 IntellijIDEA 下运行我的应用程序时,此设置运行良好,但一旦我将其打包,它就会停止工作,sbt-assemby
而是出现此错误:
我怎样才能访问这个文件的内容,它可以同时从 IDE 和组装的 jar 文件工作?