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

Commitizen是否支持更新pom.xml?Maven项目版本更新疑问

Commitizen同步更新Maven pom.xml版本的方案

Commitizen核心功能聚焦于规范提交信息和语义化版本计算,默认只会更新.cz.yaml和changelog文件,不直接支持修改pom.xml版本,但可以通过以下两种方式实现需求:

1. 使用Maven专用Commitizen扩展插件

有第三方扩展专门适配Maven项目,能让cz bump自动同步更新pom.xml版本:

  • 安装适配插件(如commitizen-maven)到项目或全局环境
  • 在.cz.yaml中配置Maven版本更新器:
    version:
      updater:
        name: 'commitizen-maven'
        options:
          pom_path: './pom.xml' # 单模块项目路径,多模块可调整为根pom路径
    
  • 重新执行cz bump,新版本会同时写入.cz.yaml、changelog和pom.xml

2. 自定义脚本+Commitizen钩子

如果不想依赖第三方插件,可通过Commitizen的钩子机制,在版本更新后调用Maven命令修改pom版本:

  1. 项目根目录创建脚本update-pom-version.sh:
    #!/bin/bash
    NEW_VERSION=$1
    # 更新版本并提交修改
    mvn versions:set -DnewVersion=$NEW_VERSION
    mvn versions:commit
    
  2. 给脚本添加执行权限:
    chmod +x update-pom-version.sh
    
  3. 在.cz.yaml中配置post-bump钩子:
    hooks:
      post-bump: "./update-pom-version.sh {{version}}"
    
  4. 执行cz bump时,Commitizen会自动调用脚本完成pom.xml版本同步

多模块项目注意事项

如果是Maven多模块项目,需要:

  • 针对根pom执行版本更新命令,确保子模块版本同步
  • 调整插件配置或脚本参数,覆盖所有子模块的pom文件

内容的提问来源于stack exchange,提问作者Bianca Torres

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.06 16:45:25