如何将两个Maven目标链接到另一个之前?

问题描述 投票:0回答:1

我们想用mvn release:prepare来发布我们的版本。但是,我们还构建了一个依赖项,并且两个版本都使用SNAPSHOT。

Maven-versions-plugin可以帮助我们处理这个问题,因此我们的构建过程将是:

mvn versions:update-properties
mvn versions:update-parent
svn ci
mvn release:prepare

我研究了如何将这些链接在一起,我发现最简单的方法就是编写一个带有自定义生命周期的插件:http://www.sonatype.com/books/mvnref-book/reference/writing-plugins-sect-plugins-lifecycle.html

请任何人做得更好吗?在那种复杂程度上,我宁愿只记录三行。

POM会非常冗长,希望这会有所帮助:

Parent (has a version)
|- ParentFather
|- ParentMother

Main (parent is Parent, has a version, contains property Child.version)
|- MainBrother (depends on MainSon and ParentFather)
|- MainSister
|- MainDaughter (has version Child.version)
|- MainSon (has version Child.version)

因此,要释放Main,这是我的最终目标,我需要释放Parent,Son和Daughter。完成后,我需要更新Main以使用这些版本。

maven
1个回答
1
投票

如果要自动化它,一个简单的脚本也可以提供帮助。您甚至可以添加一些返回值的评估,以确保上一步没有失败。

您是否考虑过使用配置文件来执行该顺序中的步骤?您可以将versions插件步骤绑定到项目的早期阶段,然后执行SVN提交(使用SCM插件)和发布。

© www.soinside.com 2019 - 2024. All rights reserved.