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

GitHub Actions工作目录下仓库文件位置及前端构建找不到package.json问题问询

GitHub Actions 默认仓库文件存储位置

你拉取的仓库代码默认存储在运行器的${GITHUB_WORKSPACE}环境变量对应路径下,Ubuntu运行器的绝对路径为 /home/runner/work/<仓库名>/<仓库名>,对应你这个项目就是日志里显示的/home/runner/work/infinote/infinote,你的前端package.json完整路径为 /home/runner/work/infinote/infinote/front/package.json。

报错原因

你在env中定义的working-directory: ./front只是自定义环境变量,不会自动修改run命令的执行路径,npm install默认在仓库根目录查找package.json,根目录没有对应文件所以报错。

修复方案

有两种常用修改方式:

方式1:全局指定job的默认工作目录

在job级别配置所有run步骤的默认执行路径,无需逐个步骤配置:

jobs:
  front:
    runs-on: ubuntu-latest
    defaults:
      run:
        working-directory: ./front # 所有run命令默认在front目录执行
    steps:
      - uses: actions/checkout@v2
        with:
          ref: master
      - uses: actions/setup-node@v2
        with:
          node-version: '14'
      - run: npm install
      - run: npm install -g @quasar/cli
      - run: quasar build
      - uses: actions/upload-artifact@v2
        with:
          name: front
          path: front/dist/spa # 上传路径从仓库根目录计算,需要加front前缀

方式2:单独给每个需要的run步骤指定工作目录

jobs:
  front:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
        with:
          ref: master
      - uses: actions/setup-node@v2
        with:
          node-version: '14'
      - run: npm install
        working-directory: ./front
      - run: npm install -g @quasar/cli
      - run: quasar build
        working-directory: ./front
      - uses: actions/upload-artifact@v2
        with:
          name: front
          path: front/dist/spa

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 13:27:00