在命令行模式下启动appium server时报错:error: uncaughtException: Cannot find module 'internal/util/types'
再来看看appium和node的版本:
造成启动失败的原因:
appium在编写时遵循的是ES5规范,而node 的10.16版本却不是,不同的规范造成 apiium 在启动时 与node 发生了冲突
所以解决办法是:降低node版本,遵循ES5规范
插曲:理解下ES
ECMAScript是一种由ECMA组织(前身为欧洲计算机制造商协会)制定和发布的脚本语言规范
ES的几个重要版本
-
ES5 : 09年发布
-
ES6(ES2015) : 15年发布, 也称为ECMA2015
-
ES7(ES2016) : 16年发布, 也称为ECMA2016 (变化不大)
由此,ES6是在15年发布的,所以使用15年之前发布的node版本,绝对遵循ES5规范
Node 历史版本下下载:https://nodejs.org/zh-cn/download/releases/
就选择2014年12月17日发布的0.10.34版本
卸载之前的node,安装0.10.34版本
再次查看node与appium版本:
启动 appium server
启动成功