前言:我已经接管了一个历史悠久的多模块Maven项目。现在是时候清理依赖版本了。由于使用版本范围存在问题(首先,它们无法按照规范运行;其次,它们消除了构建的可重复性),因此,我将介绍版本-maven-plugin(v2.7)。
当前,我正在尝试使用目标versions:use-latest-releases
来更新依赖工件的版本。它在大多数情况下都有效,但是它一直在寻找Beta版本以进行更新-我很惊讶它们显然算作“发行版”。我设法在超级父pom(pom打包工件中的pom.xml
,适当地命名为super
中)中配置了插件,所有模块和子模块都将其称为父对象(有时是间接地)。我找到了option to refer to an xml file containing rules to ignore specific versions or version patterns-可悲的是,我无法将规则直接放入超级父pom中(或者我还没有找到该选项)。
所以这是我最终遇到的问题:如何引用位于超级父工件pom.xml
旁边的文件(根据文档:“使用旅行车URI或类路径URI”)以pom格式打包要安装在Nexus中?根据我的研究,这是不可能的。
因此,让我更广泛地讲:如何集中跨多模块maven项目树配置版本-maven-plugin,以忽略所有与正则表达式.*-b.*
匹配的版本?
理想情况下,我什至不必将超级项目导入到我的工作区中,也不必将该文件放在网络服务器上(我希望它与超级项目相关联,而不是在某个地方飞来飞去。)