我有一个Maven,我用Jenkins在pom.xml中构建项目和部署可执行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 build like -Drevision=BranchName-SNAPSHOT clean compile package deploy。但我希望动态获取分支名称。
enter code here
发布于 2018-07-27 14:17:57
如果你使用clean compile package deploy
,你需要复制几个parts..only clean deploy
。请阅读有关Maven Life cycle的文档。
此外,如果您希望动态更改版本,可以通过使用正确的属性(Starting with Maven 3.5.0+)来实现,这些属性包括${revision}
、${sha1}
和${changelist}
,例如:
<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
,请仔细阅读文档并遵循它们。
https://stackoverflow.com/questions/51559471
复制