我正在使用类似于此处描述的项目的项目 .所以,它在父pom.xml中有几个模块:
<modules>
<module>../de.vogella.tycho.plugin</module>
<module>../de.vogella.tycho.feature</module>
<module>../de.vogella.tycho.p2updatesite</module>
</modules>
Run Code Online (Sandbox Code Playgroud)
这些模块具有通用版本号,例如1.0.0-SNAPSHOT或不具有-SNAPSHOT.feature.xml文件需要包含相同的版本号:
<feature
id="com.my.feature"
label="My plugin feature"
version="1.0.0">
Run Code Online (Sandbox Code Playgroud)
和:
<plugin
id="com.my.plugin"
download-size="0"
install-size="0"
version="1.0.0"
unpack="false"/>
Run Code Online (Sandbox Code Playgroud)
文件category.xml(在p2更新站点项目中)和MANIFEST.MF(在插件项目中)需要包含相同的值.
问题是:如何使用Maven自动化所有这些文件中的版本号更新过程?
我尝试使用maven-release-plugin和maven-versions-plugin来解决这个问题.第一个插件会产生大量未使用的操作(比如进行大量的CVS提交,我在这个项目中没有使用).第二个插件只对pom.xml文件进行更改,不修改feature.xml,category.xml和MANIFEST.MF,或者我用它不太好.