appium 无法启动 - 未捕获的错误工具

appium failed to start - uncaught error instruments

当启动 Appium GUI 工具时,在重新安装我的整个 mac 之后,我遇到了以下错误:

/Applications/Appium.app/Contents/Resources/node/bin/node' '/Applications/Appium.app/Contents/Resources/node_modules/appium/bin/appium.js'

error: uncaughtException: Cannot find module 'appium-instruments' date=Mon Oct 12 2015 14:14:28 GMT+0300 (EEST), pid=444, uid=1525045707, gid=1275180346, cwd=/Applications/Appium.app/Contents/Resources/node_modules/appium, execPath=/Applications/Appium.app/Contents/Resources/node/bin/node, version=v0.12.7, argv=[/Applications/Appium.app/Contents/Resources/node/bin/node, /Applications/Appium.app/Contents/Resources/node_modules/appium/bin/appium.js], rss=80273408, heapTotal=62810368, heapUsed=41559528, loadavg=[2.0048828125, 1.69775390625, 0.82421875], uptime=279, trace=[column=15, file=module.js, function=Function.Module._resolveFilename, line=336, method=Module._resolveFilename, native=false, column=25, file=module.js, function=Function.Module._load, line=278, method=Module._load, native=false, column=17, file=module.js, function=Module.require, line=365, method=require, native=false, column=17, file=module.js, function=require, line=384, method=null, native=false, column=14, file=/Applications/Appium.app/Contents/Resources/node_modules/appium/lib/devices/ios/instruments.js, function=, line=4, method=null, native=false, column=26, file=module.js, function=Module._compile, line=460, method=_compile, native=false, column=10, file=module.js, function=Object.Module._extensions..js, line=478, method=Module._extensions..js, native=false, column=32, file=module.js, function=Module.load, line=355, method=load, native=false, column=12, file=module.js, function=Function.Module._load, line=310, method=Module._load, native=false, column=17, file=module.js, function=Module.require, line=365, method=require, native=false, column=17, file=module.js, function=require, line=384, method=null, native=false, column=19, file=/Applications/Appium.app/Contents/Resources/node_modules/appium/lib/devices/ios/ios.js, function=, line=15, method=null, native=false, column=26, file=module.js, function=Module._compile, line=460, method=_compile, native=false, column=10, file=module.js, function=Object.Module._extensions..js, line=478, method=Module._extensions..js, native=false, column=32, file=module.js, function=Module.load, line=355, method=load, native=false, column=12, file=module.js, function=Function.Module._load, line=310, method=Module._load, native=false], stack=[Error: Cannot find module 'appium-instruments', at Function.Module._resolveFilename (module.js:336:15), at Function.Module._load (module.js:278:25), at Module.require (module.js:365:17), at require (module.js:384:17), at Object. (/Applications/Appium.app/Contents/Resources/node_modules/appium/lib/devices/ios/instruments.js:4:14), at Module._compile (module.js:460:26), at Object.Module._extensions..js (module.js:478:10), at Module.load (module.js:355:32), at Function.Module._load (module.js:310:12), at Module.require (module.js:365:17), at require (module.js:384:17), at Object. (/Applications/Appium.app/Contents/Resources/node_modules/appium/lib/devices/ios/ios.js:15:19), at Module._compile (module.js:460:26), at Object.Module._extensions..js (module.js:478:10), at Module.load (module.js:355:32), at Function.Module._load (module.js:310:12)]

如果您遇到此问题并知道解决错误的方法,请告诉我

从 1.4.8 升级到 1.4.13 后出现确切错误。删除 1.4.13 并重新安装 1.4.8 及更高版本,然后再次 运行。

通过从 1.4.8 /Applications/Appium.app/Contents/Resources/node_modules/appium/node_modules 复制缺失的节点库并粘贴到 1.4.13.

的同一文件夹,使其正常工作

也许 1.4.13 的构建未能正确打包它。

我今天遇到了同样的问题。我的配置是 Appium 1.4.13 和 Xcode 版本 7.0.1 (7A1001)。

在此 link https://github.com/appium/appium-dot-app/issues/510 中提出的解决方案似乎 "cleaner" 而不是从旧版本添加模块。

建议更改Appium中包含的所有symlink的目的地。app/Contents/Resources/node_modules/appium/node_modules指向相对../submodules文件夹中包含的模块。

我使用如下命令行来修改那里的所有 symlinks :

cd /Applications/Appium.app/Contents/Resources/node_modules/appium/node_modules
ln -f -s ../submodules/appium-instruments/ appium-instruments

但当时并没有完全解决,我遇到了与@Igal 相同的问题:

dyld: could not load inserted library '/Applications/Appium.app/Contents/Resources/node_modules/appium/submodules/appium-instruments/thirdparty/iwd7/InstrumentsShim.dylib' because no suitable image found. Did find:
/Applications/Appium.app/Contents/Resources/node_modules/appium/submodules/appium-instruments/thirdparty/iwd7/InstrumentsShim.dylib: mmap() error 1 at address=0x104497000, size=0x00001000 segment=__TEXT in Segment::map() mapping /Applications/Appium.app/Contents/Resources/node_modules/appium/submodules/appium-instruments/thirdparty/iwd7/InstrumentsShim.dylib

我用这里提出的解决方案修复了它:https://github.com/appium/appium/issues/5720 IE。从命令行启动 Appium 时使用以下标志:

--native-instruments-lib 

您也可以在 GUI 中添加它:开发人员设置 > 自定义服务器标志。

我遇到了同样的问题,在这里得到了答案:https://github.com/appium/appium-dot-app/issues/512。 转到 /Applications/Appium.app/Contents/Resources/node_modules/appium/node_modules,并将 link 文件目标更改为“/usr/local/lib/node_modules/appium/node_modules/xxxx”

cd /Applications/Appium.app/Contents/Resources/node_modules/appium
npm install