Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
237 views
in Technique[技术] by (71.8m points)

android - How to fix error "Could not detect Mac OS X Version from sw_vers output: '10.12 '" from Appium

I installed appium-1.5.3.dmg But when I click the stethoscope button the Appium is show error :

 ? Xcode is installed at: /Library/Developer/CommandLineTools
[Error: Could not detect Mac OS X Version from sw_vers output: '10.12
']

enter image description here

Thank you!

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

It' worked for me.

You can config file by this command:

  • grep -rl "Could not detect Mac OS X Version from sw_vers output:" /Applications/Appium.app/

enter image description here

  • Terminal will show : /Applications/Appium.app//Contents/Resources/node_modules/appium/node_modules/appium-support/build/lib/system.js /Applications/Appium.app//Contents/Resources/node_modules/appium/node_modules/appium-support/lib/system.js /Applications/Appium.app//Contents/Resources/node_modules/appium-support/build/lib/system.js /Applications/Appium.app//Contents/Resources/node_modules/appium-support/lib/system.js

  • Use command vim and config each file.

Example

vim /Applications/Appium.app//Contents/Resources/node_modules/appium/node_modules/appium-support/build/lib/system.js

enter image description here

Config file:

enter image description here

  1. Change From ->

    case 10: _arr = ['10.8', '10.9', '10.10', '10.11']; _i = 0;

    To ->

    case 10: _arr = ['10.8', '10.9', '10.10', '10.11','10.12']; _i = 0;


vim /Applications/Appium.app//Contents/Resources/node_modules/appium/node_modules/appium-support/lib/system.js

enter image description here

Config file:

enter image description here

  1. Change From ->

    try { stdout = (await exec('sw_vers', ['-productVersion'])).stdout; }

    To ->

    try { stdout = (await exec('sw_vers', ['-productVersion'])).stdout.trim(); }

  2. Change From ->

    for (let v of ['10.8', '10.9', '10.10', '10.11']) { if (stdout.indexOf(v) === 0) { return v; } }

    To ->

    for (let v of ['10.8', '10.9', '10.10', '10.11','10.12']) { if (stdout.indexOf(v) === 0) { return v; } }


vim /Applications/Appium.app//Contents/Resources/node_modules/appium-support/build/lib/system.js

enter image description here

Config file:

enter image description here

  1. Change From ->

    case 10: _arr = ['10.8', '10.9', '10.10', '10.11']; _i = 0;

    To ->

    case 10: _arr = ['10.8', '10.9', '10.10', '10.11','10.12']; _i = 0;


vim /Applications/Appium.app//Contents/Resources/node_modules/appium-support/lib/system.js

enter image description here

Config file:

enter image description here

  1. Change From ->

    try { stdout = (await exec('sw_vers', ['-productVersion'])).stdout; }

    To ->

    try { stdout = (await exec('sw_vers', ['-productVersion'])).stdout.trim(); }

  2. Change From ->

    for (let v of ['10.8', '10.9', '10.10', '10.11']) { if (stdout.indexOf(v) === 0) { return v; } }

    To ->

    for (let v of ['10.8', '10.9', '10.10', '10.11','10.12']) { if (stdout.indexOf(v) === 0) { return v; } }

Click start the stethoscope button

enter image description here


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...