在我们的开发过程中,目前流行的版本控制工具maven,在项目开发阶段,大家都是通过发布SNAPSHOT快照版进行相互模块之间的依赖开发,
这个时候就会有一个问题,要是一天构建多次的快照版,会发现在项目打包的时候,WEB-INF下的lib文件夹有很多重名的jar,只是加了时间戳,如下图所示:
本文提供一种方式解决去除重包的问题。
在需要打包的war的pom文件下,添加以下配置:
<build>
<finalName>appframe-web</finalName>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.3</version>
<configuration>
<webResources>
<resource>
<directory>src/main/webapp</directory>
</resource>
</webResources>
<outputFileNameMapping>@{artifactId}@-@{baseVersion}@.@{extension}@</outputFileNameMapping>
</configuration>
</plugin>
</plugins>
</build>
将相关的finalName改成自己的项目名称。注意一点,这儿jar看项目进行调整
<outputFileNameMapping>@{artifactId}@-@{baseVersion}@.@{extension}@</outputFileNameMapping>
重新输入maven构建命令
mvn clean install
结果如图所示: