【发布时间】:2017-04-15 09:37:07
【问题描述】:
我一直在使用 sbt-assembly 为我的 scala 项目生成独立的 JAR 文件。不过,我想减小我的 JAR 文件的大小(目前约为 150MB,而且肯定有改进的余地)。
我使用以下命令列出了生成的 JAR 文件的内容:
jar tf <JAR file>
这表明生成的 JAR 文件中有很多类在项目中没有使用。我相信这些类会被包含在第三方 JAR 中。
问题
(a) 是否有一个选项可用于指示 sbt-assembly 生成一个最小 JAR 文件,其中不包含我的项目中未使用的第三方类?
(b) 我可以使用 AssemblyStrategy 手动指定需要排除的文件。这是一个合理的策略吗?我有点担心使用这种方法,JAR 文件最终可能会引发意外的 ClassNotFound 异常。
提前致谢。
【问题讨论】:
标签: scala jar sbt sbt-assembly