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

Windows WSL2环境执行npm run dev报Unexpected token ...语法错误

问题根因

  • 当前WSL2环境中使用的Node.js版本为v7.10.1,版本过低:对象扩展运算符...属于ES2018规范特性,Node.js从v8.3.0版本才开始默认支持该语法,v7.x版本原生无法识别该语法,因此解析moleculer依赖中的相关代码时直接抛出语法错误。
  • 该问题和WSL2环境本身无关,其他项目也出现相同报错是因为所有项目都共用了当前的低版本Node.js运行时。

解决方案

推荐方案:升级Node.js版本

你日志中已经使用nvm管理Node版本,可直接通过nvm升级到官方维护的LTS版本(如v16、v18、v20):

  1. 执行nvm ls-remote --lts查看所有可用的LTS版本
  2. 执行nvm install <LTS版本号>安装指定版本,例如nvm install 18.17.1
  3. 执行nvm alias default <安装的版本号>将该版本设置为全局默认版本,避免每次重启终端需要手动切换
  4. 执行node -v确认版本切换成功

版本升级完成后操作项目:

  1. 进入项目目录,删除旧的依赖和锁文件:
rm -rf node_modules package-lock.json yarn.lock pnpm-lock.yaml
  1. 重新安装依赖:npm install
  2. 执行npm run dev即可正常启动项目

临时兼容方案(不推荐)

若确实需要保留v7.x版本的Node.js运行环境,可在启动命令中添加harmony flag开启实验性特性支持,修改package.json中的dev脚本为:

"dev": "node --harmony node_modules/.bin/moleculer-runner --repl services"

注意:v7.x版本已停止维护多年,存在大量安全漏洞,该方案仅可作为临时应急使用,不建议长期采用。

内容的提问来源于stack exchange,提问作者cloudscape-germany

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 11:18:02