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

使用nektos/act运行GitHub Action时nuget命令无法执行求助

问题原因与解决办法

核心原因

nuget/setup-nuget@v1.1.1 默认安装的是Windows平台的nuget.exe,在Linux环境(ubuntu-latest)下必须依赖Mono才能运行。但你用act本地测试时,默认容器镜像未预装Mono,因此触发mono: not found错误,导致NuGet命令无法执行。

可行解决办法(任选其一)

方法一:改用dotnet restore(推荐)

对于.NET项目,直接使用dotnet CLI执行还原操作更简便,无需单独安装NuGet。GitHub托管 runner 和act容器通常都预装了.NET SDK:

- run: dotnet restore MyProject.csproj --packages ./mydirectory/output

方法二:提前安装Mono依赖

如果必须使用nuget命令,需在安装NuGet前先部署Mono环境:

- name: Install Mono
  run: sudo apt-get update && sudo apt-get install -y mono-complete
- name: 'Nuget Tool Installer'
  uses: nuget/setup-nuget@v1.1.1
- run: nuget restore MyProject.csproj -PackagesDirectory ./mydirectory/output

方法三:安装Linux原生NuGet CLI

跳过nuget/setup-nuget,直接在Linux环境安装原生NuGet工具:

- name: Install NuGet CLI
  run: |
    wget https://dist.nuget.org/win-x86-commandline/latest/nuget.exe
    chmod +x nuget.exe
    sudo mv nuget.exe /usr/local/bin/nuget
- run: nuget restore MyProject.csproj -PackagesDirectory ./mydirectory/output

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.26 11:33:32