maven-设置当前项目版本

maven-设置当前项目版本,maven,Maven,我使用mvn版本:set-DnewVersion=x.x.x来更改当前项目版本。它只会更改元素“下的版本。它不会更改元素“下的版本,该元素具有依赖的库版本。我每次都被迫手动执行此操作。我是否可以在一个步骤中更改所有版本 我想我知道你在说什么。您是否也试图在相关依赖项块中增加版本号?我不认为有一种内置的方法可以做到这一点,但这里有一个适用于整个groupId的单行程序: xmlstarlet ed -P -L -N p='http://maven.apache.org/POM/4.0.0' -u

我使用mvn版本:set-DnewVersion=x.x.x来更改当前项目版本。它只会更改元素
下的版本。它不会更改元素
下的版本,该元素具有依赖的库版本。我每次都被迫手动执行此操作。我是否可以在一个步骤中更改所有版本

我想我知道你在说什么。您是否也试图在相关依赖项块中增加版本号?我不认为有一种内置的方法可以做到这一点,但这里有一个适用于整个groupId的单行程序:

xmlstarlet ed -P -L -N p='http://maven.apache.org/POM/4.0.0' -u "/p:project/p:dependencies/p:dependency[p:groupId = 'my.group']/p:version" -v $VERSION $POM_FILE

我在一个循环中使用它来批量设置多个POM中许多依赖项的版本。

您能解释一下“标记下”是什么意思吗?您是说多模块构建还是指特定的依赖项?出于某种原因,我的问题没有正确地发布。我会在这里重新键入它。。。我使用mvn版本:set-DnewVersion=x.x.x来更改当前项目版本。它仅更改元素“”下的版本。它不会更改元素“”下具有依赖库版本的版本。我每次都被迫手动执行此操作。我是否可以在一个步骤中更改所有版本?版本插件不支持更新POM中声明的属性。您也可以尝试覆盖命令行上的属性值,或者停止使用属性并使用versions插件,因为它设计用于:-),这完全是错误的,因为它支持更新属性()。Hi dacc,感谢您的回复。我尝试在centos中安装xmlstarlet,但迄今为止没有成功:-(。启动该程序的文档和帮助非常少。这很奇怪。在centos 5.5上安装xmlstarlet没有问题。