java - 使用 Maven 更改模块版本

标签 java maven semantic-versioning

我有一个大型的多模块 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以及关于Versions Maven Plugin但我不知道如何让它们自动升级主要版本。

你能帮我解决这个问题吗?

最佳答案

在多模块项目中,每个模块都应该具有相同的版本。我建议将您的模块拆分为单独的 Maven 项目,然后更容易使用 Maven Release Plugin 和 Versions Maven Plugin。

关于java - 使用 Maven 更改模块版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32760920/

相关文章:

java - 为什么 Maven Surefire 甚至没有运行?

maven - 如何修复 AEM 6.3 - Maven Archetype 12 "No DS descriptor found"错误?

java - 使用java在Excel工作表中的列之间交换

java - Jython:在浏览器中打开 URL(不导入 Python 库)

java - Spring Boot 2.1.5 Java 11 模块,组装 JAR : Could not create modular JAR file. 时出错 JDK jar 工具退出 1 -> [帮助 1]

version-control - 何时在发布管理周期中增加版本号

javascript - 简化 semver 版本比较逻辑

java - 当java编译器输出错误时如何使管道失败

java - 运行 Maven 测试时 Cucumber 测试未执行

unit-testing - 我应该继续测试代码还是实现更多功能?