我已经安装了android bundle,并且我已经在.bashrc文件中配置了所有内容,甚至当我在命令行中说android时。我正在获取android管理器..但是当我说离子平台添加android时,我总是会收到错误提示为“错误:ANDROID_HOME未设置,并且路径中未包含“ android”命令。您必须至少满足以下条件之一。” 。我尝试了很多方法,但是问题没有解决。
我的平台:
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)
我可以知道如何解决此错误吗
我遇到了同样的问题,并且解决了。
我认为这是最新的cordova与最新的android的兼容性问题。以及您遇到的android home路径问题。
在.bashrc文件中
export HOME="/home/indranil" export ANDROID_HOME="$HOME/software/adt-bundle-linux-x86_64-20140702/sdk" export PATH="$HOME/software/adt-bundle-linux-x86_64-20140702/sdk/tools:$ANDROID_HOME/platform_tools:$PATH"
如果您使用的是旧版本,请尝试下载最新的android SDK。并从您的Android管理器中下载Android 4.4.2(API 19)。
您可以使用最新的cordova(4.0.0),但是如果问题仍然存在,请使用cordova(3.5.0-0.2.7),但是如果要升级或降级cordova,请使用以下方法删除现有的cordova:-
npm uninstall -g cordova (If linux use sudo npm uninstall -g cordova)
如果您使用的是Linux,请不要使用sudo
在安装Cordoava时感到很惊讶,如果出现任何错误,请运行以下命令
sudo chown -R `whoami` ~/.npm sudo chown -R `whoami` /usr/local/lib/node_modules sudo chown -R `whoami` /usr/local
然后安装没有sudo的cordova
npm install -g cordova@3.5.0-0.2.7
在创建离子应用程序并将android添加为平台时,请勿使用sudo命令。添加平台时,Cordova在主文件夹中创建一个.cordova目录。在创建新的离子应用程序之前,请删除该目录。
在下载android(4.4.2)之后,使用以下命令创建一个android虚拟设备:
android avd