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

在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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.26 15:32:05