Maven打包同一个jar有不同的:版本+时间戳(解决思路)

时间:2021-05-14 18:37:35

在我们的开发过程中,目前流行的版本控制工具maven,在项目开发阶段,大家都是通过发布SNAPSHOT快照版进行相互模块之间的依赖开发,

这个时候就会有一个问题,要是一天构建多次的快照版,会发现在项目打包的时候,WEB-INF下的lib文件夹有很多重名的jar,只是加了时间戳,如下图所示:

Maven打包同一个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

结果如图所示:

Maven打包同一个jar有不同的:版本+时间戳(解决思路)