【发布时间】:2014-11-30 16:53:41
【问题描述】:
我已经安装了 android bundle 并且我已经在 .bashrc 文件中配置了所有内容,即使我在命令行中说 android .. 我正在获取 android manager .. 但是当我说 ionic platform add android 我总是收到错误为“错误:ANDROID_HOME 未设置,并且“android”命令不在您的 PATH 中。您必须至少满足以下条件之一。” .我尝试了很多方法,但问题没有解决。
我的平台:
Ubuntu 14.04 64 位
.bashrc 文件:
export HOME="/home/system"
export ANDROID_HOME="$HOME/adt-bundle-linux-x86_64-20140702/sdk/tools"
export ANDROID_PLATFORM_TOOLS="$HOME/adt-bundle-linux-x86_64-20140702/sdk/platform-tools"
export PATH="$ANDROID_HOME:$ANDROID_PLATFORM_TOOLS:$PATH"
export JAVA_HOME="/usr/lib/jvm/java-7-openjdk-amd64"
export ANT_HOME="/usr/share/ant"
export PATH="$ANT_HOME/bin:$PATH"
export ANDROID_HOME="/home/system/adt-bundle-linux-x86_64-20140702/sdk/tools"
执行时出错:
system@system-H81M-S1:/usr/share/nginx/www/myApp# ionic platform add android
npm http GET https://registry.npmjs.org/cordova-android/3.6.3
npm http 200 https://registry.npmjs.org/cordova-android/3.6.3
npm http GET https://registry.npmjs.org/cordova-android/-/cordova-android-3.6.3.tgz
npm http 200 https://registry.npmjs.org/cordova-android/-/cordova-android-3.6.3.tgz
Creating android project...
/system/.cordova/lib/npm_cache/cordova-android/3.6.3/package/bin/node_modules/q/q.js:126
throw e;
^
Error: ANDROID_HOME is not set and "android" command not in your PATH. You must fulfill at least one of these conditions.
at /system/.cordova/lib/npm_cache/cordova-android/3.6.3/package/bin/lib/check_reqs.js:158:19
at _fulfilled (/system/.cordova/lib/npm_cache/cordova-android/3.6.3/package/bin/node_modules/q/q.js:798:54)
at self.promiseDispatch.done (/system/.cordova/lib/npm_cache/cordova-android/3.6.3/package/bin/node_modules/q/q.js:827:30)
at Promise.promise.promiseDispatch (/system/.cordova/lib/npm_cache/cordova-android/3.6.3/package/bin/node_modules/q/q.js:760:13)
at /system/.cordova/lib/npm_cache/cordova-android/3.6.3/package/bin/node_modules/q/q.js:821:14
at flush (/system/.cordova/lib/npm_cache/cordova-android/3.6.3/package/bin/node_modules/q/q.js:108:17)
at process._tickCallback (node.js:419:13)
at Function.Module.runMain (module.js:499:11)
at startup (node.js:119:16)
at node.js:906:3
Error: /system/.cordova/lib/npm_cache/cordova-android/3.6.3/package/bin/
create: Command failed with exit code 8 at ChildProcess.whenDone (/usr/lib/node_modules/cordova/node_modules/
cordova-lib/src/cordova/superspawn.js:135:23)
at ChildProcess.emit (events.js:98:17)
at maybeClose (child_process.js:756:16)
at Process.ChildProcess._handle.onexit (child_process.js:823:5)
请问我该如何解决这个错误
【问题讨论】:
-
您是以 root 身份运行它吗?也许你可以输入
echo $ANDROID_HOME你会得到一个空字符串 -
不,我只作为普通用户运行
-
system@system-H81M-S1:~$ echo $ANDROID_HOME /home/system/adt-bundle-linux-x86_64-20140702/sdk/tools
-
system@system-H81M-S1:/usr/share/nginx/www/myApp#对我来说,它看起来像你以 root 身份运行它 -
@blackbelt 嗨,我只在非 root 用户中工作。即使我为非 root 用户配置了相同的配置。我也在root用户中尝试过,但无论如何它都不起作用......有什么建议,比如这个错误发生在哪里?一般为什么会出现这个错误?
标签: android node.js cordova ionic-framework