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

IntelliJ终端npm start正常,普通Shell执行ES6语法报错求助

解决普通Shell终端执行npm start时的SyntaxError: Unexpected token {问题

从你提供的报错信息来看,核心问题出在Node.js版本过低上:你的普通Shell终端使用的是Node v5.5.0,这个版本对ES6的解构赋值语法(也就是const { choosePort, ... } = require(...)这种写法)支持不完善,而IntelliJ终端里应该是配置了更高版本的Node,所以能正常运行项目。

下面是具体的解决步骤:

  • 升级Node.js版本
    Node v6及以上版本已经全面支持ES6解构赋值,推荐安装长期支持(LTS)版本:
    如果你用nvm管理Node版本,执行以下命令:

    # 安装最新LTS版本
    nvm install --lts
    # 切换到刚安装的版本
    nvm use --lts
    # 验证版本是否切换成功
    node -v
    

    如果你不用nvm,可以直接下载对应安装包完成升级。

  • 匹配项目指定的Node版本
    检查项目根目录是否有.nvmrc文件,如果有的话,里面记录了项目要求的Node版本,直接执行nvm use就能自动切换到对应版本,避免版本不兼容问题。

  • 重新执行启动命令
    切换到正确的Node版本后,回到项目目录,再次运行npm start,应该就能正常执行scripts/start.js里的代码了。

补充说明:IntelliJ之所以能正常运行,是因为它的终端默认会读取你在IDE设置中配置的Node解释器(大概率是你系统中安装的更高版本Node),而普通Shell终端默认使用了nvm设置的v5.5.0版本,两者版本不一致才导致了这个差异。

内容的提问来源于stack exchange,提问作者eugene

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.15 04:18:34