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

求助:GitHub Actions版本升级流程中无法获取版本输出

问题分析与解决

核心问题

你的GitHub Actions无法获取版本输出,根源在于两个关键错误:

  1. 未正确注册步骤输出变量:get_version步骤仅打印了版本号,但没有将其标记为步骤输出,导致后续步骤无法读取到VERSION的值。
  2. 版本号带冗余引号:使用jq ".tag_name"获取的版本号会包含双引号(如"10.12.0"),既影响输出显示,还可能导致后续Maven命令执行异常。

解决方案

1. 修正版本获取步骤

将Workflow中Get the version步骤的代码替换为:

- name: Get the version
  id: get_version
  run: |
    VERSION=$(curl -s https://api.github.com/repos/checkstyle/checkstyle/releases/latest \
                   | jq -r ".tag_name") 
    echo "VERSION=$VERSION" >> $GITHUB_OUTPUT
  • jq -r参数用于移除版本号的双引号,返回纯文本格式的版本号。
  • echo "VERSION=$VERSION" >> $GITHUB_OUTPUT将版本号写入GitHub Actions的步骤输出池,供后续步骤调用。

2. 更新后续步骤的变量引用

修改Modify File和Push commit步骤中的变量引用路径,从${{ steps.get_version.VERSION }}改为${{ steps.get_version.outputs.VERSION }}:

- name: Modify File
  run: |
    ./.ci/bump-version.sh ${{ steps.get_version.outputs.VERSION }}
- name: Push commit
  run: |
    git config --global user.name 'github-actions[bot]'
    git config --global user.email 'github-actions[bot]@users.noreply.github.com'
    git commit -am "minor: Bump release version to ${{ steps.get_version.outputs.VERSION }}"
    git push

3. 验证效果

修改完成后,Workflow会正确传递无引号的版本号到Shell脚本,脚本中的echo VERSION="$VERSION"将正常输出版本号,同时Maven命令也能顺利完成pom.xml的版本升级。

内容的提问来源于stack exchange,提问作者Rahul Khinchi

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.23 03:18:22