我有一个Maven pom.xml,我使用Jenkins在Nexus中构建项目和可执行jar部署。 但是我想根据分支名称更改版本名称。
例如:我在pom.xml中
<groupId>net.test</groupId>
<artifactId>test-parent</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>iin-parent</name>
<packaging>pom</packaging>
我需要这样设置:(Branch- Master / Test1 / Test2 /..)
<groupId>net.test</groupId>
<artifactId>test-parent</artifactId>
<version>BranchName_0.0.1-SNAPSHOT</version>
<name>iin-parent</name>
<packaging>pom</packaging>
这怎么办?
我正在使用MVN构建,例如-Drevision = BranchName-SNAPSHOT干净的编译程序包部署。但是我想动态获取分支名称。
enter code here
答案 0 :(得分:0)
如果您使用clean compile package deploy
,则说明您要复制多个部分。仅需要clean deploy
。请阅读有关Maven Life cycle的文档。
此外,如果您想动态更改版本,则可以使用${revision}
,${sha1}
和${changelist}
的正确属性(Starting with Maven 3.5.0+)来做到这一点,例如:
<groupId>net.test</groupId>
<artifactId>test-parent</artifactId>
<version>${revision}</version>
<properties>
<revision>1.0-SNAPSHOT</revision>
</properties>
这可以在Maven中像这样完成:
mvn -Drevision=2.0-SNAPSHOT clean package
或者如果您希望为分支机构这样做:
mvn -Drevision=2.0-BranchName-SNAPSHOT clean package
您必须知道自己是否愿意mvn clean deploy
,请仔细阅读文档并加以遵循。