目录
  1. 1. Maven版本管理
    1. 1.1. 版本号的递增原则
    2. 1.2. snapshot与release
  2. 2. 多模块统一修改版本号
    1. 2.1. 在顶级 Module 中添加插件
Maven版本号管理及多模块项目统一修改版本号

文章首发于:clawhub.club


Maven版本管理

X,Y,Z分别表示主版本号,次版本号,补丁版本号。
主版本号为0时,表示是开发阶段的版本号管理。

版本号的递增原则

  1. 主版本号,当有非兼容性的变更时,递增主版本号;
  2. 次版本号,当以可向后兼容的方式增加了功能时,递增次版本号,以及
  3. 补丁版本号,当有向后兼容的bug修复时,递增补丁版本号。

预发布和构建元数据的附加标签可用作主版本、次版本和补丁版的扩展。

snapshot与release

  • snapshot
    版本代表不稳定、尚处于开发中的版本,即快照版本。
  • release
    版本代表功能趋于稳定、当前更新停止,可以用于发行的版本。
    release 版本一旦发布,就不可改变。

多模块统一修改版本号

在顶级 Module 中添加插件

1
2
3
4
5
6
7
8
9
10
11
12
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>versions-maven-plugin</artifactId>
<version>2.3</version>
<configuration>
<generateBackupPoms>false</generateBackupPoms>
</configuration>
</plugin>
</plugins>
</build>

‘generateBackupPoms’ 配置的作用是在修改 pom 时是否对原文件进行备份。
####为顶级 Module 设置新版本
命令如下:

1
mvn versions:set -DnewVersion=0.0.1-SNATHOST

当然也可以手动修改顶级Module的版本号。
注意:上述命令只会为顶级的 Module 修改版本号。
####更新所有子 Module 的版本
命令如下:

1
mvn versions:update-child-modules

注意: 之前项目的所有 Module 版本号需要统一,否则版本号会更新不全。

文章作者: ClawHub
文章链接: https://www.clawhub.club/posts/2019/08/09/JAVA%E5%9F%BA%E7%A1%80/Maven%E7%89%88%E6%9C%AC%E5%8F%B7%E7%AE%A1%E7%90%86%E5%8F%8A%E5%A4%9A%E6%A8%A1%E5%9D%97%E9%A1%B9%E7%9B%AE%E7%BB%9F%E4%B8%80%E4%BF%AE%E6%94%B9%E7%89%88%E6%9C%AC%E5%8F%B7/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 ClawHub的博客
打赏
  • 微信
  • 支付宝
扫一扫关注ClawHub公众号,专注Java、技术分享、面试资源。

评论