1

目标显示versions-maven-plugin versions:set有一个removeSnapshot参数:

removeSnapshot: 是否从现有版本中删除 -SNAPSHOT。如果未设置将默认为 false。

Type: boolean
Since: 2.10
Required: No
User Property: removeSnapshot
Default: false

我有一个 Maven 多模块聚合 POM,所有模块中的所有版本都设置为0.2.0-SNAPSHOT. 我准备发布(请不要告诉我使用 Maven 发布插件),我想将版本更改为0.2.0. 所以我试试这个:

mvn versions:set -DremoveSnapshot=true

Maven停下来问我:

Enter the new version to set 0.2.0-SNAPSHOT:

嗯,如果我手动输入0.2.0,有什么意义removeSnapshot=true呢?

4

1 回答 1

0

版本2.3 的 versions-maven-plugin,在使用时对我来说很好用

mvn versions:set -DremoveSnapshot=true

此外,虽然找不到它记录在任何地方,但在使用时测试行为

<configuration>
      <removeSnapshot>true</removeSnapshot>
</configuration>

或者

mvn versions:set -DremoveSnapshot=true

我可以说,如果您尝试将新版本从现有版本设置0.2.0-SNAPSHOT为另一个版本0.2.1-SNAPSHOT0.2.1)将版本升级为其他版本。该参数将限制您仅标记当前 SNAPSHOT 版本的发布,0.2.0无论如何。


所以(removeSnapshot标记为的配置true

mvn versions:set -DnewVersion=0.2.1

或者

mvn versions:set -DnewVersion=0.2.1-SNAPSHOT

会导致产生

<version>0.2.0</version>

另一方面,无论是它default还是明确设置为false上述命令都会生成

<version>0.2.1</version> 

<version>0.2.1-SNAPSHOT</version>

分别。

于 2016-12-16T18:18:40.180 回答