React新手求助:Vercel部署CRA项目遇'react-scripts build' exited with 127错误
解决Vercel部署CRA项目时“react-scripts build exited with 127”错误
问题描述
作为React新手,我尝试在Vercel上部署用Create React App(CRA)创建的项目构建版本,但部署失败,报错信息为:react-scripts build exited with 127。已尝试以下操作但未解决:
- 删除
node_modules、package-lock.json后重新执行npm install - 手动执行
npm install react-scripts - 在Vercel应用中设置环境变量
CI=false
针对性解决方案
1. 检查react-scripts的依赖位置
打开项目的package.json,确认react-scripts在dependencies字段下,而非devDependencies。Vercel生产环境部署时默认不会安装devDependencies,如果react-scripts在devDependencies里,会导致构建时找不到命令。
- 若不在
dependencies,执行命令:
提交更新后的npm install react-scripts --savepackage.json和package-lock.json到代码仓库,再重新部署。
2. 确认Vercel构建配置
进入Vercel项目的「Settings」→「Build & Development Settings」:
- 确保「Build Command」设置为
npm run build - 确保「Output Directory」设置为
build(CRA默认的构建输出目录)
3. 统一Node.js版本
Vercel默认使用的Node.js版本可能和本地开发环境不一致,导致依赖安装或构建出错:
- 在项目根目录新建
.nvmrc文件,写入本地使用的Node版本号(例如18.17.0) - 提交该文件到代码仓库,重新触发部署,Vercel会自动匹配对应Node版本
4. 清理Vercel构建缓存
有时缓存会导致依赖或构建逻辑异常:
- 进入Vercel项目的「Deployments」页面,找到最近的失败部署
- 点击「Redeploy」,勾选「Clear build cache」选项后重新部署
内容的提问来源于stack exchange,提问作者Kaushik Mazumdar
相关产品推荐
相关产品推荐

