Ubuntu服务器执行npm run build时出现编译错误求助
解决Next.js构建的JS语法兼容问题
问题本质
你碰到的??运算符报错、undici依赖编译失败,核心原因是Node.js版本(v14.21.3)不满足当前Next.js版本的要求。Next.js 13+最低需要Node.js 16.8+,你的版本不支持它用到的ES2020+特性和现代Node API,手动修改依赖代码没法彻底解决问题,必须升级Node.js。
一步一步操作
1. 安装nvm管理Node版本(避免系统级冲突)
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
执行完成后,重启终端或运行以下命令使nvm生效:
source ~/.bashrc
2. 升级到Node.js 18.x LTS(稳定且适配性强)
nvm install 18 nvm alias default 18
3. 确认版本升级成功
node -v # 应输出v18开头的版本号 npm -v # 应输出9.x左右的版本号
4. 清理旧依赖并重新安装
回到项目目录,先清除旧的依赖缓存:
rm -rf node_modules package-lock.json
重新安装项目依赖:
npm install
5. 执行构建命令
现在即可正常运行构建:
npm run build
内容的提问来源于stack exchange,提问作者Samuel Amann
相关产品推荐
相关产品推荐

