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