Vercel部署报错 npm run build exited with 127 问题排查
问题定位
构建报错退出码127是系统找不到对应执行命令的标准错误,从Vercel构建日志里的sh: parcel: command not found可以直接确定故障原因:构建环境中不存在parcel命令。
你本地运行正常是因为你本地全局安装过parcel,但是查看你的package.json配置,devDependencies里仅声明了sass依赖,完全没有添加parcel相关的依赖声明。Vercel构建时只会安装package.json中显式声明的依赖,自然找不到parcel命令。你之前设置CI=false的操作和当前故障完全无关,该配置是用来控制是否将构建警告视为错误中断流程,解决不了缺依赖的问题。
修复步骤
- 在本地项目根目录执行命令,将parcel安装为项目开发依赖:
npm install -D parcel - 安装完成后检查
package.json的devDependencies字段,确认已新增parcel的版本声明,示例如下:
"devDependencies": { "parcel": "^2.8.0", "sass": "^1.52.2" }
- 确认项目根目录下的
package-lock.json已同步更新包含parcel的依赖记录,将修改后的两个文件提交推送到代码仓库。 - 回到Vercel控制台重新触发项目部署即可正常构建。
补充说明
Vercel构建流程默认会安装项目的dependencies和devDependencies下的所有依赖,只要parcel被正确声明在依赖列表中,构建时就会自动安装,不需要额外全局安装命令。
内容的提问来源于stack exchange,提问作者springoftwentyone
相关产品推荐
相关产品推荐

