Eclipse插件的跨项目版本控制

时间:2012-05-28 19:44:25

标签: java eclipse maven eclipse-plugin versioning

我有多个相互依赖的Elipse插件项目。关于这个的几个问题:

1)如果我更改了一个插件的版本号,是否有可能自动更新相关插件的plugin.xml文件以反映版本号的变化?

2)Maven pom的相同:当我更改版本号时,我可以以某种方式自动更新pom吗?

3)如果我想保持plugin.xml和pom.xml版本号一致,是否有自动方法呢?

4)和最后:如果我有多个应该具有相同版本号的项目,我可以以某种方式同步版本号吗?

2 个答案:

答案 0 :(得分:1)

使用Maven Release Plugin - 尤其是update-versions goal - 可能至少可以解决您已解决的一些问题。

来自http://maven.apache.org/的文档:

  

在某些情况下,您可能需要一种简单的方法来更新多模块项目的每个POM中的版本号。更新版本的目标旨在实现此目标。

     

要更新POM中的版本号,请运行:

     

mvn release:update-versions

     

系统将提示您输入项目每个模块的版本号。如果您希望每个模块版本与父POM相同,则可以使用选项autoVersionSubmodules。

     

mvn release:update-versions -DautoVersionSubmodules=true

     

在这种情况下,系统只会提示您输入所需的版本号。

答案 1 :(得分:0)

正如khmarbaise所指出的,还有Tycho,它是一个maven插件,可以作为maven和eclipse插件之间的桥梁。

这两个链接提供了实现我在问题中提出的所需信息:

https://docs.sonatype.org/display/M2ECLIPSE/Staging+and+releasing+new+M2Eclipse+release

http://software.2206966.n2.nabble.com/Incrementing-updating-release-version-of-plugins-while-generating-p2-site-td5929658.html

好像你需要使用命令

mvn -Dtycho.mode=maven org.eclipse.tycho:tycho-versions-plugin:set-version -DnewVersion=<version>

应该将父pom,模块和plugin.xml的所有版本设置为给定的version.lik