使用Pretty Snapshot Version更新Maven依赖项属性

时间:2015-09-24 20:30:24

标签: maven properties versioning pom.xml release

我目前有一个maven发布管道,设置了多个项目。我还没有找到一种方法来将依赖属性更新为最新的'漂亮的' mvn release:perform之后的快照版本。

澄清一下,这是发布渠道:

Release Project A --> Release Project B --> Release Project C...

发布前的项目B pom.xml(伪pom):

<version>1.2.1-SNAPSHOT</version>
<properties>
    <project-a.version>1.4.1-SNAPSHOT</project-a.version>
</properties>

在发布过程中,<project-a.version>会自动更新为最新发布的版本,在本例中为1.4.1

发布后,项目B的伪pom看起来像这样:

<version>1.2.2-SNAPSHOT</version>
<properties>
    <project-a.version>1.4.1</project-a.version>
<properties>

出于开发和测试的原因,我希望在执行发布后根据最新的快照版本将<project-a.version>设置为1.4.2-SNAPSHOT

使用mvn versions:update-properties -DallowSnapshots=true实现了这一点,但它给我留下了一个非常难看的快照版本号,并让我与特定的快照工件绑定:

<project-a.version>3b2a0d174a0658de1d3bfc777c248f83a8286e61-SNAPSHOT</project-a.version>

无论如何都要得到将军,“漂亮”。版本号?我假设可能没有,因为“漂亮的”#39;快照版本号并不是指一个特定的工件,这在技术上并不是一个好主意。

1 个答案:

答案 0 :(得分:0)

看看maven update pom property。您可以定义新值并指定应更新哪些属性。 答案中的链接基本上指向Mojo desciption:http://www.mojohaus.org/versions-maven-plugin/update-properties-mojo.html