maven 设置版本号插件 和 assembly打包插件设置
maven 设置版本号插件
多模块父子工程中,每次迭代时修改版本号,要将父工程和所以子工程中的parent.version修改。这种手工修改方式极容易遗漏,导致项目内部模块版本依赖存在问题。
我们可以通过maven的插件方式来升级整个项目的版本号。方案如下:
- 在项目顶层pom中添加version插件
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>versions-maven-plugin</artifactId>
<version>2.10.0</version>
</plugin>
</plugins>
- 在项目根目录下执行以下命令修改版本号
// 设置新的版本号未1.2.0-SNAPSHOT
mvn versions:set -DnewVersion=1.2.0-SNAPSHOT
assembly打包插件设置
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<version>3.0.0</version>
<configuration>
<finalName>${project.artifactId}-${project.version}</finalName>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef> // 将依赖一起打包
</descriptorRefs>
<appendAssemblyId>false</appendAssemblyId> //去除打包后的包名跟着jar-with-dependencies
</configuration>
<executions>
<execution>
<id>make-assembly</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>3.2.0</version>
<executions>
<execution>
<id>default-jar</id>
<phase>none</phase> // 去除maven原来的打包动作,这样就不会打出两个包来了
</execution>
</executions>
</plugin>
</plugins>