在Sonatype Maven 指南中,示例多模块项目必须在 parentpom.xml
和所有 child中定义项目的版本pom.xml
(以引用 parent 的版本)。
有没有办法在一个位置定义版本?似乎需要进行大量更改才能提升版本。
在Sonatype Maven 指南中,示例多模块项目必须在 parentpom.xml
和所有 child中定义项目的版本pom.xml
(以引用 parent 的版本)。
有没有办法在一个位置定义版本?似乎需要进行大量更改才能提升版本。
在我看来,组织一个多模块 Maven 项目的正确方法是让一个项目通过它的部分来跟踪工件版本dependencyManagement
,它是所有其他项目的父项;和一个聚合器项目,其中包含所有其他项目modules
,包括父项目。
这使您可以集中处理项目之间和外部库之间的依赖关系的版本。您仍然必须明确跟踪每个项目在其 pom 中的版本与父项目中的对应关系,以及父项目在其 pom 中与其所有后代中的版本之间的对应关系。
我同意这是很多工作,而且很容易出错:考虑使用自定义插件和/或脚本自动化它。Maven Release 插件可以帮助解决这个问题。