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

GitHub Actions构建Maven报Non-readable POM错误修复方案

错误根因

报错本质是运行环境里根本不存在目标仓库的代码:你不管是自定义Action源码还是调用方的工作流配置,都没有加代码检出步骤,GitHub Runner启动后工作目录是空的,Maven执行时自然找不到pom.xml文件。

修复方法

两种方案,推荐第一种,减少使用者的配置成本:

方案1:将代码检出逻辑内置到自定义Action中

在自定义composite Action的runs.steps最顶部(所有构建、JDK配置步骤之前),添加官方代码检出步骤:

- name: Checkout repository
  uses: actions/checkout@v3

调整后Action的steps开头结构参考:

runs:
  using: "composite"
  steps:
    # 新增的检出步骤,放在最前面
    - name: Checkout repository
      uses: actions/checkout@v3

    - name: Set up JDK 17 for deploy to OSSRH
      uses: actions/setup-java@v2
      with:
        distribution: "adopt"
        java-version: ${{ inputs.java-version }}
        server-id: ossrh
        server-username: ${{ inputs.nexus-username }}
        server-password: ${{ inputs.nexus-password }}
        gpg-private-key: ${{ inputs.gpg-private-key }}
        gpg-passphrase: ${{ inputs.gpg-passphrase }}

    # 原有后续步骤保持不变

方案2:在调用方工作流中手动加检出步骤

如果不想把检出逻辑内置到Action里,就在调用Action的工作流中,先执行代码检出,再调用你的发布Action:

jobs:
  publish:
    runs-on: ubuntu-latest
    steps:
      # 新增检出步骤
      - name: Checkout code
        uses: actions/checkout@v3

      - name: Maven Library build and publish
        uses: MathieuSoysal/Java-maven-library-publisher@v1.0.1
        with:
          nexus-username: ${{ secrets.NEXUS_USERNAME }}
          nexus-password: ${{ secrets.NEXUS_PASSWORD }}
          gpg-private-key: ${{ secrets.GPG_PRIVATE_KEY }}
          gpg-passphrase: ${{ secrets.GPG_PASSPHRASE }}
          github-token: ${{ secrets.GITHUB_TOKEN }}
          java-version: 17
其他需要顺手修复的问题

你的Action里还有两个逻辑问题,不改的话就算解决了pom找不到的问题,后续发布也会出问题:

  • 版本更新步骤顺序错误:现在是先执行mvn package打包,再执行版本号修改,打出来的产物版本和你要发布的版本不一致,需要把版本更新步骤移到Maven构建步骤之前。
  • MAVEN_OPTS配置无效:单独用export设置环境变量的步骤只在当前shell会话生效,步骤执行完变量就销毁了,后续的mvn deploy步骤拿不到这个配置,需要把这个参数直接写到对应deploy步骤的run命令里,或者配置到步骤的env块中。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.01 02:21:21