使用 maven 修改模块版本
Bumping versions of modules with maven
我有一个大型的多模块 Maven 项目(数十个模块,4 个嵌套级别)。
每个模块都有自己的语义版本(可以是 SNAPSHOT
也可以不是)。
我想找到使用一个命令或脚本自动更新每个模块主要版本的方法,以避免每个模块都发生变化。
所以我有例如
parent POM (1.2.3-SNAPSHOT)
|-- api-module (3.4.5)
|-- impl-module (5.6.7-SNAPSHOT)
|-- another-parent-module (1.0.1-SNAPSHOT)
|--|--sub-module1 (1.2.3)
|--|--sub-module2 (2.3.4)
碰撞后我想要
parent POM (2.0.0-SNAPSHOT)
|-- api-module (4.0.0)
|-- impl-module (6.0.0-SNAPSHOT)
|-- another-parent-module (2.0.0-SNAPSHOT)
|--|--sub-module1 (2.0.0)
|--|--sub-module2 (3.0.0)
我知道 Maven Release Plugin and about Versions Maven Plugin 但我不知道如何让它们自动升级主要版本。
你能帮我解决这个问题吗?
在多模块项目中,每个模块应该有相同的版本。我建议将您的模块拆分为单独的 Maven 项目,然后使用 Maven Release Plugin 和 Versions Maven Plugin 会更容易。
我同意
multi module project, every module should have the same version
但是我们在一个有几个团队参与的大项目中已经有了一些模块结构,而且不能轻易改变。
由于我还没有找到解决方案,我为此创建了一个 groovy 脚本:https://github.com/ddska/maven-semver-bumper
我有一个大型的多模块 Maven 项目(数十个模块,4 个嵌套级别)。
每个模块都有自己的语义版本(可以是 SNAPSHOT
也可以不是)。
我想找到使用一个命令或脚本自动更新每个模块主要版本的方法,以避免每个模块都发生变化。
所以我有例如
parent POM (1.2.3-SNAPSHOT) |-- api-module (3.4.5) |-- impl-module (5.6.7-SNAPSHOT) |-- another-parent-module (1.0.1-SNAPSHOT) |--|--sub-module1 (1.2.3) |--|--sub-module2 (2.3.4)
碰撞后我想要
parent POM (2.0.0-SNAPSHOT) |-- api-module (4.0.0) |-- impl-module (6.0.0-SNAPSHOT) |-- another-parent-module (2.0.0-SNAPSHOT) |--|--sub-module1 (2.0.0) |--|--sub-module2 (3.0.0)
我知道 Maven Release Plugin and about Versions Maven Plugin 但我不知道如何让它们自动升级主要版本。
你能帮我解决这个问题吗?
在多模块项目中,每个模块应该有相同的版本。我建议将您的模块拆分为单独的 Maven 项目,然后使用 Maven Release Plugin 和 Versions Maven Plugin 会更容易。
我同意
multi module project, every module should have the same version
但是我们在一个有几个团队参与的大项目中已经有了一些模块结构,而且不能轻易改变。
由于我还没有找到解决方案,我为此创建了一个 groovy 脚本:https://github.com/ddska/maven-semver-bumper