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

运行npm run build报Can't resolve '@babel/runtime/helpers/esm/objectSpread2'如何解决

问题解决方法

该报错的核心原因是你使用的react-scripts@2.0.0版本过低,内置的Babel编译规则不识别新版依赖(比如你用的@mui/icons-material v5等)调用的@babel/runtime ESM格式辅助函数路径,你可以按以下优先级尝试解决方案:

方案1:升级react-scripts(最推荐,兼容性最好)

  • 先卸载旧版本react-scripts:
    npm uninstall react-scripts
  • 安装最新稳定版react-scripts:
    npm install react-scripts@5.0.1 --save
  • 删除项目根目录下的node_modules文件夹、package-lock.json文件
  • 重新安装依赖:npm install
  • 执行构建命令测试:npm run build

方案2:调整@babel/runtime的依赖位置(不想升级react-scripts时可尝试)

当前你把@babel/runtime放在了devDependencies,但它的辅助函数是代码运行时需要调用的,需要移到生产依赖:

  • 先卸载已装的@babel/runtime:
    npm uninstall @babel/runtime
  • 重新安装到生产依赖:
    npm install @babel/runtime@7.15.4 --save
  • 清理缓存并重装依赖:
    npm cache clean --force && rm -rf node_modules package-lock.json && npm install
  • 再次执行npm run build

方案3:添加依赖覆盖规则(前两个方案无效时使用)

如果前两个方案都不生效,在你的package.json中添加overrides字段(npm v8.3+支持)强制所有依赖统一调用你安装的@babel/runtime版本:
在package.json中新增配置:

"overrides": {
  "@babel/runtime": "^7.15.4"
}

添加后重新执行npm install再构建即可。


内容的提问来源于stack exchange,提问作者Rahul Raj N

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 00:27:03