You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Jenkins环境下用Maven更新POM及依赖版本(替代快照)

替代Maven快照版本的版本管理与同步方案

一、版本号策略

放弃快照版本后,采用语义化版本+唯一构建标识的正式版本号规则,比如:

  • 格式示例:1.2.3-build${BUILD_NUMBER}(BUILD_NUMBER为Jenkins自动生成的构建序号)
  • 或:1.2.3-202405201430(精确到分钟的时间戳)
    每个构建生成唯一的正式版本,既满足版本追溯需求,又符合Maven对正式版本的发布规范。

二、公共Jar包的Jenkins构建与版本更新流程

  1. 版本号自动更新
    在Jenkins构建步骤中,使用Maven versions 插件修改公共Jar的pom.xml版本号:
    mvn versions:set -DnewVersion=1.2.3-build${BUILD_NUMBER}
    mvn versions:commit  # 确认版本修改,替代versions:revert回滚操作
    
  2. 提交版本变更到代码仓库
    通过Jenkins的Git插件或shell命令,将更新后的pom.xml提交到代码仓库:
    git add pom.xml
    git commit -m "Update version to 1.2.3-build${BUILD_NUMBER}"
    git push origin main
    
  3. 发布正式版本到私有仓库
    执行Maven发布命令,将构建好的Jar包推送到私有仓库(如Nexus):
    mvn clean deploy -DskipTests
    

三、依赖服务的版本同步方案

前置优化:用属性统一管理依赖版本

在所有依赖公共Jar的服务pom.xml中,将公共Jar的版本定义为属性,便于统一更新:

<properties>
    <common.jar.version>1.2.3-build45</common.jar.version>
</properties>

<dependencies>
    <dependency>
        <groupId>com.yourcompany</groupId>
        <artifactId>common-jar</artifactId>
        <version>${common.jar.version}</version>
    </dependency>
</dependencies>

Jenkins自动化同步流程

  1. 触发依赖服务的版本更新
    在公共Jar的Jenkins流水线中,构建完成后触发依赖服务的Jenkins任务,传递新的公共Jar版本号作为参数。
  2. 更新依赖服务的版本属性
    在依赖服务的Jenkins构建步骤中,执行Maven命令更新版本属性:
    mvn versions:update-properties -Dproperty=common.jar.version -DnewVersion=${NEW_COMMON_VERSION}
    mvn versions:commit
    
  3. 提交变更并触发构建
    提交更新后的pom.xml到仓库,然后执行服务的构建与发布:
    git add pom.xml
    git commit -m "Update common jar version to ${NEW_COMMON_VERSION}"
    git push origin main
    mvn clean install -DskipTests
    

四、额外注意事项

  • 私有仓库需配置允许正式版本的发布,避免重复发布同一版本(Maven默认禁止,如需覆盖需添加 -Dmaven.deploy.skip=false -Doverride=true,但不推荐)
  • 使用Jenkins流水线(Pipeline)将公共Jar构建、版本更新、依赖服务同步串联为一个完整工作流,减少人工干预
  • 可配合Git标签,为每个公共Jar的正式版本打标签,便于后续追溯

内容的提问来源于stack exchange,提问作者Neha Shettar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.24 22:42:08