【发布时间】:2016-01-28 05:43:33
【问题描述】:
我在一个需要一些依赖项的图书馆工作。 为了便于部署,我想创建一个包含所有内容的 JAR 文件,包括依赖项。
我已经尝试过 sbt-assembly - 这可行,但由于法律原因,它可能是不可取的,所以我正在寻找一种解决方案,其中生成的 JAR 文件包含原始 JAR 文件,并且类路径条目在 MANIFEST .MF 的设置使得客户端类可以将这个“嵌套 JAR 文件”添加到它们的类路径中。
这样的事情可能吗? sbt-one-jar 几乎可以满足我的要求,但仅适用于可执行文件 - 我的产品将生成一个库,因此这不是一个完美的选择。
到目前为止,我一直在使用 SBT,SBT 插件将是最容易使用的,因为现在将everyting 转换为 maven 或 gradle 或 ... 的工作量太大。
【问题讨论】:
-
法律论据是什么?从技术上讲,无论您是在 jar 中还是在 .class 文件中都有 jar,实际上并没有什么区别。毕竟 jar 只是一个虚拟文件系统。
-
这个库的许可证说我们不允许修改它。目前尚不清楚重新包装是否算作“修改”——我们只是想保持水密。
标签: sbt