'错误:命令“android”使用cordova失败了

时间:2014-07-04 21:34:33

标签: android macos cordova

我正试图在cordova上添加android平台。我在Android SDK中添加并下载了最新的SDK,我的路径是:export PATH=${PATH}:/Users/xxx/Development/android-sdk-macosx/platform-tools:Users/xxx/Development/android-sdk-macosx/tools,但我一直收到以下错误:

Error: The command "android" failed. Make sure you have the latest Android SDK installed, and the "android" command (inside the tools/ folder) is added to your path.
    at /Users/xxx/.cordova/lib/android/cordova/3.5.0/bin/lib/check_reqs.js:85:29
    at _rejected (/Users/xxx/.cordova/lib/android/cordova/3.5.0/bin/node_modules/q/q.js:808:24)
    at /Users/xxx/.cordova/lib/android/cordova/3.5.0/bin/node_modules/q/q.js:834:30
    at Promise.when (/Users/xxx/.cordova/lib/android/cordova/3.5.0/bin/node_modules/q/q.js:1079:31)
    at Promise.promise.promiseDispatch (/Users/xxx/.cordova/lib/android/cordova/3.5.0/bin/node_modules/q/q.js:752:41)
    at /Users/xxx/.cordova/lib/android/cordova/3.5.0/bin/node_modules/q/q.js:574:44
    at flush (/Users/xxx/.cordova/lib/android/cordova/3.5.0/bin/node_modules/q/q.js:108:17)
    at process._tickCallback (node.js:419:13)
Error: /Users/xxx/.cordova/lib/android/cordova/3.5.0/bin/create: Command failed with exit code 8
    at ChildProcess.whenDone (/usr/local/lib/node_modules/cordova/node_modules/cordova-lib/src/cordova/superspawn.js:131:23)
    at ChildProcess.emit (events.js:98:17)
    at maybeClose (child_process.js:755:16)
    at Process.ChildProcess._handle.onexit (child_process.js:822:5)

我做错了什么?我一直在寻找答案,但似乎没有任何效果。 提前谢谢!

2 个答案:

答案 0 :(得分:2)

对于Mac OS X 10.9的 Apache Cordova Android Studio 0.8,如果您已安装在默认/ Applications文件夹中,请在终端上运行

export ANDROID_HOME="/Applications/Android Studio.app/sdk"
export ANDROID_TOOLS="/Applications/Android Studio.app/sdk/tools/"
export ANDROID_PLATFORM_TOOLS="/Applications/Android Studio.app/sdk/platform-tools/"
PATH=$PATH:$ANDROID_HOME:$ANDROID_TOOLS:$ANDROID_PLATFORM_TOOLS

要确认,请运行echo并获取

echo $PATH
/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/Applications/Android Studio.app/sdk:/Applications/Android Studio.app/sdk/tools/:/Applications/Android Studio.app/sdk/platform-tools/

对于Cordova 3.6,它在新的Android Studio上引发了另一个错误

Error: Please install Android target "android-19"

要解决此问题,请在IDE中打开SDK管理器,然后下载提到的Android版本(android-19)

答案 1 :(得分:1)

android命令是android sdk工具包的一部分。 Cordova工具使用androidadb来发挥他们的魔力,两者都需要放在路上。

它们位于以下目录中:

path/to/android/sdk/tools
path/to/android/sdk/platform-tools  

我不知道你正在开发什么操作系统。在基于windows和unix的系统上修改路径的过程是不同的

添加到类似unix的系统上的路径

在我的系统(OSX)上,通过将以下行添加到.bash_profile

来完成
PATH=$PATH:/Users/lorenzo/dev/sdks/adt-bundle/sdk/tools
PATH=$PATH:/Users/lorenzo/dev/sdks/adt-bundle/sdk/platform-tools

这也可以在一行中完成:

PATH=$PATH:/Users/lorenzo/dev/sdks/adt-bundle/sdk/tools:/Users/lorenzo/dev/sdks/adt-bundle/sdk/platform-tools

这会将路径字符串附加到全局PATH变量。在unix上,路径分隔符是':#39;

添加到Windows上的路径

大致相同的过程,这是官方文档:http://msdn.microsoft.com/en-us/library/windows/desktop/ms682653%28v=vs.85%29.aspx

额外阅读和后续步骤

This blog article will walk you through path setup, and is up to date.

您可以查看the Getting Started guide for Cordova Android,其中详细说明了如何在路径中添加必要的组件。

设置完路径后,您需要运行android工具并安装其他工具和Android平台(版本)。

您的系统也需要Apache ANT和java运行时间。

请注意,这些不是特定于cordova的要求,而是使用SDK进行Android开发的要求。