sbt / maven是否包含jar文件中的完整依赖项?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sbt / maven是否包含jar文件中的完整依赖项?相关的知识,希望对你有一定的参考价值。

我正在为以前的项目构建一个rest API。如果我将它作为依赖项添加到我的新的rest API项目中,是否所有功能都将添加到我的其余API jar文件中或仅添加到我使用的方法中?我的旧项目jar是181M,所以整个将被添加到Rest API jar?

谢谢,

答案

如果没有特殊配置,Maven根本不会在jar中包含任何依赖项。只包含源代码(和生成的类)中的编译类。如果你想包含依赖项,你必须使用maven-assembly-plugin告诉maven,如How can I create an executable JAR with dependencies using Maven?中所述。当您使用不同的包装时,可以自动包含依赖项,具体取决于包装类型。 E. g。当使用war时,所有compile依赖项都被添加到WEB-INF/lib

当您包含依赖项时,始终将完整的依赖项jar添加到您的jar中。如果需要的话,将不会检查。因此,生成的jar将包含所有181M的依赖项以及新项目的源代码。

以上是关于sbt / maven是否包含jar文件中的完整依赖项?的主要内容,如果未能解决你的问题,请参考以下文章

如何解决Maven和SBT下载Jar包太慢

maven打包问题?

idea中build.sbt文件中配置的jar包依赖一直报错

SBT包括程序中的版本号

非托管 jar 文件中的 SBT 插件

可以使Maven构建包含依赖项中的.class文件[重复]