在Ubuntu EC2部署NestJS后端执行build命令时遇语法错误
解决NestJS部署EC2时
npm run build的SyntaxError问题 问题原因
错误中的Unexpected token '?'是因为EC2实例上的Node.js版本过低,空值合并运算符??需要Node.js 14.0.0及以上版本支持,而你本地MacBook的Node版本满足要求,因此本地运行正常。
解决步骤
检查EC2当前Node.js版本:
node -v若版本低于14.x,需执行升级操作。
升级Node.js至LTS版本(以18.x为例):
# 卸载旧版本(apt安装的情况) sudo apt remove nodejs npm -y # 添加NodeSource官方源 curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash - # 安装Node.js sudo apt-get install -y nodejs验证版本:
node -v # 应显示v18.x.x npm -v清理旧依赖并重新安装:
rm -rf node_modules package-lock.json npm install重新执行构建命令:
sudo npm run build
内容的提问来源于stack exchange,提问作者Nikhil limbad
相关产品推荐
相关产品推荐

