部署Node.js应用至Render.com时react-app-rewired找不到的问题求助
解决Render.com部署时找不到react-app-rewired的问题
部署Node.js项目到Render.com时出现以下报错:
Dec 23 01:21:18 AM sh: 1: react-app-rewired: not found Dec 23 01:21:18 AM npm ERR! code ELIFECYCLE Dec 23 01:21:18 AM npm ERR! syscall spawn Dec 23 01:21:18 AM npm ERR! file sh Dec 23 01:21:18 AM npm ERR! errno ENOENT Dec 23 01:21:18 AM npm ERR! openai-template@1.0.0 build: `react-app-rewired build` Dec 23 01:21:18 AM npm ERR! spawn ENOENT Dec 23 01:21:18 AM npm ERR! Dec 23 01:21:18 AM npm ERR! Failed at the openai-template@1.0.0 build script. Dec 23 01:21:18 AM npm ERR! This is probably not a problem with npm. There is likely additional logging output above. Dec 23 01:21:18 AM Dec 23 01:21:18 AM npm ERR! A complete log of this run can be found in: Dec 23 01:21:18 AM npm ERR! /opt/render/.cache/_logs/2022-12-23T00_21_18_486Z-debug.log Dec 23 01:21:18 AM ==> Build failed 😞
以下是可行的解决办法:
调整依赖归属:检查
package.json,确保react-app-rewired被放在dependencies字段中,而非devDependencies。Render生产构建环境默认不会安装devDependencies,依赖若仅在开发环境声明,部署时会出现找不到的情况。修改后执行npm install,将更新后的package.json和package-lock.json提交至仓库。通过npx执行命令:修改
package.json里的build脚本:"scripts": { "build": "npx react-app-rewired build" }npx会自动从项目的
node_modules目录查找并执行对应命令,规避路径或全局安装缺失的问题。确认Render构建流程:在Render项目设置中,检查Build Command是否包含依赖安装步骤。确保构建命令为
npm install && npm run build,或使用npm ci严格按lock文件安装依赖:npm ci && npm run build。重置本地依赖:删除本地的
node_modules文件夹和package-lock.json文件,执行npm install重新安装依赖,再将更新后的package-lock.json提交至仓库,避免依赖版本不一致引发的安装异常。
内容的提问来源于stack exchange,提问作者Jacob Larsson
相关产品推荐
相关产品推荐

