Jenkins 配合 versions-maven-plugin 的 Maven 插件优雅的生成项目版本号

一、场景介绍

  在项目开发过程中,项目版本号的管理和维护,对于开发人员来说是一个非常不愿意去关注的事情。特别是微服务盛行的今天,子模块独立开发,子模块独立升级。各种版本之间的交叉并行,老虎、老鼠、傻傻分不清楚。

  不同的企业对项目的版本管理有不同的规定,我们应该根据不同的需求去制定版本管理流程。本次主要以项目节点主观的确定版本号,并通过 Mavenversin-maven-plugin 插件批量修改父子模块或者子模块的版本,再结合 finalName 标签的定义。通过 Jenkins 构建出需要的 jar 版本。

二、操作流程

简易操作流程

  • 在工程中通过 versin-maven-plugin 插件批量修改项目模块的版本号

  • Jenkins 根据 pom 文件中的 finalName 定义的打包项目名称构建打包

具体操作流程

  1. 纵观项目 pom 文件的关键信息

    <!-- 本工程模块gav -->
    <artifactId>rms_console_service</artifactId>
    <name>${project.artifactId}</name>
    <!-- 显示指定版本方便独自升级 -->
    <version>1.0.0.1</version>
    <packaging>jar</packaging>
    <description>*****-*****服务</description>
    
  2. 在项目中引入 version-maven-plugin 插件(父子模块的放父工程,单独模块的就放在自己的 pom 文件中)

    <!-- Maven 版本控制插件 -->
    <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>versions-maven-plugin</artifactId>
        <version>2.7</version>
    </plugin>
    
  3. build 标签中添加 finalName 指定打包的项目名称规则

    <build>
        <!-- 采用动态的参数,灵活方便修改 -->
        <finalName>${project.artifactId}-${project.version}</finalName>
        ...省略其它信息
    </build>
    
  4. 待功能开发完成以后,选择 IDEA 中的 Plugins 中的 versions 插件展开,双击设置版本选项
    在这里插入图片描述
    P.S

    也可以使用脚本在项目 pom.xml 的目录下执行

    /usr/local/apache-maven-3.6.3/bin/mvn versions:set -DnewVersion=1.0.0.2 clean compile package
    
  5. 接上一步 versions 插件会自动在控制台等待用户输入自定义版本号

    在这里插入图片描述

  6. 待执行完成以后,pom.xml 中的版本号就自动修改完成了

    在这里插入图片描述

  7. 提交自动修改版本号的 pom.xml 文件到文件版本管理系统

  8. 执行 jenkins 自动构建即可构建出预设的项目文件名称
    在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值