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

MERN栈项目部署Vercel构建失败,@zeit/ncc模块加载报错

报错解决步骤

该报错为Vercel构建器识别单仓库MERN项目结构异常导致的依赖路径解析错误,可按以下顺序排查修复:

  • 优先修正vercel.json配置,这是该场景下最常见的错误诱因,参考配置如下:
{
  "builds": [
    {
      "src": "client/package.json",
      "use": "@vercel/static-build",
      "config": {
        "distDir": "build"
      }
    },
    {
      "src": "server/server.js",
      "use": "@vercel/node"
    }
  ],
  "routes": [
    {
      "src": "/api/(.*)",
      "dest": "server/server.js"
    },
    {
      "src": "/(.*)",
      "dest": "client/$1"
    }
  ],
  "installCommand": "npm install && cd client && npm install && cd ../server && npm install"
}
  • 清理项目内冗余依赖:@vercel/ncc、@zeit/ncc属于Vercel构建工具的内部依赖,无需手动安装到项目中,否则会和构建环境的内置版本产生冲突。将这两个依赖从根目录、client、server三个路径下的package.json中全部移除,同时删除三个路径下的node_modules文件夹和package-lock.json/yarn.lock锁文件,本地重新安装依赖验证项目可正常运行后再提交部署。
  • 核对Vercel控制台项目构建配置:
    • 项目根目录保持默认,不要手动指定为client或server目录
    • 构建命令填写cd client && npm run build
    • 输出目录填写client/build
  • 匹配Node.js版本:在根目录package.json中添加以下配置,将部署环境的Node.js版本和你本地开发使用的版本保持一致,避免版本兼容问题:
"engines": {
  "node": "替换为你本地的Node.js版本,例如18.x"
}
  • 额外注意事项:后端代码中的MongoDB连接地址需要替换为MongoDB Atlas的公网连接串,同时在Atlas控制台的网络访问设置中放开0.0.0.0/0的访问权限,避免部署完成后接口无法连接数据库。

内容的提问来源于stack exchange,提问作者Maiko vd Veen

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 16:18:03