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

Mac环境下Appium Doctor执行命令遇Unexpected token语法错误求助

解决appium-doctor执行时的SyntaxError: Unexpected token {问题

嗨,我之前也踩过这个坑,一眼就看出问题所在了!

问题原因

你报错里的catch {是ES2019才引入的无参数catch语句(也就是不需要写(err)的简化catch语法),而你当前使用的Node.js版本太低,完全不支持这个新特性。从报错里的vm.js和module.js版本信息来看,你的Node.js应该是10.x及以下的旧版本,而新版appium-doctor已经用上了高版本Node的语法,所以运行时直接抛出了语法错误。

解决办法

下面给你两种可行的方案,优先推荐第一种:

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

低版本Node不仅会遇到这个问题,还会错过大量安全修复和新特性,升级才是长久之计:

  • 先检查当前Node版本,确认是不是过低:
    node -v
    
  • 用nvm(Node版本管理器)来安装并切换到稳定版Node:
    1. 如果你的Mac装了Homebrew,直接安装nvm:
      brew install nvm
      
      安装完成后,按照终端提示把nvm的初始化代码添加到你的shell配置文件(比如~/.zshrc或~/.bashrc)里,然后重启终端或者执行source ~/.zshrc(对应你的配置文件)生效。
    2. 安装长期支持的稳定版Node,并切换过去:
      nvm install --lts
      nvm use --lts
      
  • 最后重新运行appium-doctor验证:
    appium-doctor -h
    
    这时候应该就能正常显示帮助内容了。

方案二:降级appium-doctor到兼容低版本Node的旧版本

如果暂时不想升级Node,可以试试安装旧版appium-doctor:

npm uninstall -g appium-doctor
npm install -g appium-doctor@3.1.2

不过这个方法只是临时 workaround,旧版本可能存在已知bug或缺少新功能,还是建议优先升级Node。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.14 08:31:39