我要求使用Maven自定义项目。我们有3个项目基于Spring&休眠。因此,构建时每个WAR文件中都有重复的jar,这会在部署时不必要地增加大小。
因此我们决定将所有jar依赖项保存到一个名为“CommonJars”的项目中,其他现有项目将使用它们。对于部署,我们希望生成“CommonJars”的TAR / ZIP文件(虽然部署它应该在文件夹中提取,很可能是Tomcat的lib文件夹,因为它在webapps文件夹中部署的项目是通用的)和其他不带jar的WAR文件。这样我们就可以减少3个项目的WAR文件的大小。
有人可以告诉我如何实现这一目标吗?由于我是Maven的新手,我无法为此找到合适的解决方案。
答案 0 :(得分:4)
我不同意你的方法,但为了解决你的maven问题,你需要在你的maven依赖中包含一个'范围'。
示例:
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-core</artifactId>
<version>5.0.1.Final</version>
<scope>provided</scope>
</dependency>
Maven Scope'提供'将允许您编译您的项目,但maven将不会将它们包含在您的战争中。
祝你好运。