版本Maven插件的意外更新行为

时间:2019-03-01 13:20:25

标签: maven versions-maven-plugin

目标versions:update-properties产生以下输出:

10:52:25,255 INFO  - --- versions-maven-plugin:2.7:update-properties (default-cli) @ release-plugin-test-new-bo ---
10:52:32,605 INFO  - artifact de.continentale.muv:coutil: checking for updates from nexus
10:52:32,666 INFO  - Subincremental version changes allowed
10:52:32,682 INFO  - Updated ${coutil.version} from 7.0.0-SNAPSHOT to 7.0.1-RC0002

我设置了参数-DallowIncrementalUpdates=false,还设置了-DallowMinorUpdates=false-DallowMajorUpdates=false,这反映在“允许进行增量版本更改”行中。不过,该版本通过更改版本中的第三个数字进行了升级。

此行为是意外的,也不是幂等的(下一次运行将7.0.1-RC0002替换为7.0.1)。

我试图从文档以及Javadoc和源代码中找出原因,但在Maven版本比较中却迷失了方向。

有人可以启发我吗?这是一个错误,还是我需要以不同的方式配置事物以避免在第三个数字上进行更新?

1 个答案:

答案 0 :(得分:0)

一些调试得出的结论是,对于7.0.0-SNAPSHOT,具有上述参数的目标versions:update-properties涉及以下方面:

  • 通过增加第三个数字来创建上限(在这种情况下,上限是7.0.1-SNAPSHOT)。
  • 寻找该界限以下的最大版本(对于Maven 7.0.1-RC0002小于7.0.1-SNAPSHOT)。

恕我直言,尽管我将各自的属性设置为false,但代码的行为却不正确,因为实际上 是版本号的增量更改。