【发布时间】:2016-03-28 14:11:44
【问题描述】:
Cordova 安装正确,Android SDK 也是。
# echo $ANDROID_HOME
/home/user/android-sdk-linux
但是
# cordova build android --verbose
Error: CordovaError: Failed to find 'ANDROID_HOME' environment variable. Try setting setting it manually.
Failed to find 'android' command in your 'PATH'. Try update your 'PATH' to include path to valid SDK directory.
at /home/user/myApp/platforms/android/cordova/lib/check_reqs.js:225:8
at _fulfilled (/home/user/myApp/platforms/android/cordova/node_modules/q/q.js:834:54)
at self.promiseDispatch.done (/home/user/myApp/platforms/android/cordova/node_modules/q/q.js:863:30)
at Promise.promise.promiseDispatch (/home/user/myApp/platforms/android/cordova/node_modules/q/q.js:796:13)
at /home/user/myApp/platforms/android/cordova/node_modules/q/q.js:857:14
at runSingle (/home/user/myApp/platforms/android/cordova/node_modules/q/q.js:137:13)
at flush (/home/user/myApp/platforms/android/cordova/node_modules/q/q.js:125:13)
at process._tickCallback (node.js:355:11)
at Function.Module.runMain (module.js:503:11)
at startup (node.js:129:16)
好的...通过nodejs检查变量:
# node
> process.env['ANDROID_HOME']
'~/android-sdk-linux'
一切似乎都很好... 好的...通过添加下一行来编辑文件“home/user/myApp/platforms/android/cordova/lib/check_reqs.js”(来自上面的错误):
if (!process.env['ANDROID_HOME']) {
console.log(process.env['ANDROID_HOME']);
throw new CordovaError('Failed to find \'ANDROID_HOME\' environment variable. Try setting setting it manually.\n' +
'Failed to find \'android\' command in your \'PATH\'. Try update your \'PATH\' to include path to valid SDK directory.');
}
结果是:
# cordova build android --verbose
Executing "before_build" hook for all plugins.
...
Executing "after_prepare" hook for all plugins.
Executing "before_compile" hook for all plugins.
**undefined**
Error: CordovaError: Failed to find 'ANDROID_HOME' environment variable. Try setting setting it manually.
nodejs和cordova如何解决这个问题?
【问题讨论】:
标签: android linux node.js cordova