我的 .NET 和 react 项目在本地构建良好,但在 CI 服务器上,我收到以下错误。
gyp ERR! build error
EXEC : gyp ERR! stack error : not found: make
[/azp/agent/_work/22/s/solutionfolder/projectfolder/MyProject.csproj]
gyp ERR! stack at getNotFoundError
(/usr/lib/node_modules/npm/node_modules/which/which.js:13:12)
gyp ERR! stack at F (/usr/lib/node_modules/npm/node_modules/which/which.js:68:19)
gyp ERR! stack at E (/usr/lib/node_modules/npm/node_modules/which/which.js:80:29)
gyp ERR! stack at /usr/lib/node_modules/npm/node_modules/which/which.js:89:16
gyp ERR! stack at /usr/lib/node_modules/npm/node_modules/isexe/index.js:42:5
gyp ERR! stack at /usr/lib/node_modules/npm/node_modules/isexe/mode.js:8:5
gyp ERR! stack at FSReqCallback.oncomplete (fs.js:192:21)
gyp ERR! System Linux 5.4.117-58.216.amzn2.x86_64
gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node- gyp.js" "rebuild"
gyp ERR! cwd /azp/agent/_work/22/s/projectfolder/ui-components/node_modules/dtrace-provider
gyp ERR! node -v v14.17.1
gyp ERR! node-gyp -v v5.1.0
gyp ERR! not ok
我尝试了什么:
本地
- 跑到
git clean -xfd
删除node_modules
- 运行
npm install
生成新鲜package-lock.json
- 构建调用
npm ci
和npm run build..
这就是我调用反应项目构建的方式
<Target Name="CompileUIComponents" BeforeTargets="BeforeBuild" Condition="'$(NCrunch)' != '1'">
<Exec Command="npm ci --loglevel silly" WorkingDirectory="../ui-components" Condition=" '$(SkipFrontEndBuild)'!='True' " />
<Exec Command="npm run build:$(Configuration)" WorkingDirectory="../ui-components" Condition=" '$(SkipFrontEndBuild)'!='True' " />
</Target>
Configuration
可以是Debug
or Release
,两者都可以在本地正常工作。
CI服务器
dotnet build
在目录上.sln
运行
其他信息:
make
我对我的文件没有依赖关系,package.json
也没有在我的机器上全局安装它,我可以通过运行来检查npm list -g --depth=0
我遇到了 github 上报告的一些问题,这表明原因可能是其他包cwd /azp/agent/_work/22/s/projectfolder/ui-components/node_modules/dtrace-provider
,但对我的情况没有帮助。
我有一些日志,例如Skipping 'fsevents' build as platform linux is not supported
我已经在这里呆了几天了,不知道接下来要尝试什么。