7

http://mojo.codehaus.org/versions-maven-plugin/update-properties-mojo.html

Maven 版本插件versions:update-parent仅更新到最新的快照或发布版本。

但是,我目前正在使用 1.1-SNAPSHOT,并且我有这个父级的 1.1 和 2.0 版本。如何更新到 1.1?

注意:这不是一个多模块项目。父级是所有项目都继承的公司/项目范围的 pom。

4

3 回答 3

13

我遇到了和你一样的问题,但最终明白它只接受一个范围作为输入,而不是一个值,所以在你的情况下你应该输入:

mvn 版本:update-parent -DparentVersion=[1.0,1.1]

如果它存在于您的存储库中,这应该选择 1.1。

在插件错误跟踪器中获得线索阅读票

于 2014-06-02T12:26:28.253 回答
6

这有效:

mvn versions:update-parent -DparentVersion=[1.1]

原因是:因为 parentVersion 属性应该是一个范围,而不是单个版本。

然后你可以-DparentVersion=[14,16)按照versions-maven-plugin中的说明设置“”,但是如果你想设置一个给定的版本(例如1.0),你必须定义一个只有一个结果的范围,使用括号:[1.0]。

请参阅版本范围规范:http ://maven.apache.org/enforcer/enforcer-rules/versionRanges.html

-SNAPSHOT如果您没有忘记设置 allowSnapshots=true,这也适用于某个版本

于 2014-09-09T19:59:17.450 回答
0

对于更自动化的方法,您可以使用build-helper:parse-version帮助程序,因此您可以更新到下一个父版本(您仍然需要知道“下一个”部分)。例如,下一个父母未成年人:

mvn build-helper:parse-version versions:update-parent -DparentVersion='[${parsedVersion.majorVersion}.${parsedVersion.nextMinorVersion}]'
于 2020-06-23T07:07:09.623 回答