Phonegap错误:"列出Android目标时发生错误"在Ubuntu上安装Phonegap时

时间:2014-03-21 06:07:16

标签: cordova phonegap-plugins cordova-3 cordova-plugins

http://cordova.apache.org/docs/en/3.3.0/guide_platforms_android_index.md.html#Android%20Platform%20Guide

如上文所述,我已经安装了Phonegap所需的软件,因为我有版本:

对于Java:

$ java -version java version "1.7.0_51" Java(TM) SE Runtime
     

环境(build 1.7.0_51-b13)Java HotSpot(TM)64位服务器VM
  (建立24.51-b03,混合模式)

对于ANT

$ ant -version
     

Apache Ant(TM)版本1.8.2于12月3日编译   2011

对于Node.JS

$ npm -version
     

1.4.3

现在,问题是当我为Android创建一个类似于Android的phonegap项目" $ cordova创建hello com.example.hello HelloWorld"时,它用" hello"创建项目目录。名。

但是现在,当我输入这个命令" $ cordova platform添加android" in"你好"目录,它给出了下面给出的错误:

  

/你好$ cordova平台添加android创建android项目......

     

/home/deep/.cordova/lib/android/cordova/3.4.0/bin/node_modules/q/q.js:126                       扔掉;                             ^错误:列出Android目标时发生错误       在/home/deep/.cordova/lib/android/cordova/3.4.0/bin/lib/check_reqs.js:87:29       在_rejected(/home/deep/.cordova/lib/android/cordova/3.4.0/bin/node_modules/q/q.js:808:24)       在/home/deep/.cordova/lib/android/cordova/3.4.0/bin/node_modules/q/q.js:834:30       在Promise.when(/home/deep/.cordova/lib/android/cordova/3.4.0/bin/node_modules/q/q.js:1079:31)       在Promise.promise.promiseDispatch(/home/deep/.cordova/lib/android/cordova/3.4.0/bin/node_modules/q/q.js:752:41)       at /home/deep/.cordova/lib/android/cordova/3.4.0/bin/node_modules/q/q.js:574:44       在同花顺(/home/deep/.cordova/lib/android/cordova/3.4.0/bin/node_modules/q/q.js:108:17)       at process._tickCallback(node.js:415:13)错误:/home/deep/.cordova/lib/android/cordova/3.4.0/bin/create:Command   退出代码8失败       在ChildProcess.whenDone(/usr/lib/node_modules/cordova/src/superspawn.js:112:23)       在ChildProcess.EventEmitter.emit(events.js:98:17)       在maybeClose(child_process.js:743:16)       在Process.ChildProcess._handle.onexit(child_process.js:810:5)

如何摆脱这个问题?

5 个答案:

答案 0 :(得分:7)

我可以按照cordova-guide修复此问题。简而言之:

  1. 下载adt-bundle
  2. 将其解压缩到我选择的位置
  3. 将指定的文件夹添加到PATH变量:

    export PATH=${PATH}:/home/me/opt/adt-bundle/sdk/platform-tools:/home/me/opt/adt-bundle/sdk/tools

答案 1 :(得分:6)

嘿,如果您使用的是Windows,那么您就缺少环境变量。试试这个错误: "列出Android目标时发生错误"

  1. 转到我的电脑 - 右键单击​​ - 属性 - 高级系统设置 - 环境变量。

  2. 添加一些需要的变量,我就这样做了

  3. 使用我的本地场景的例子:

    SDKHOME - > C:\研发\ AndroidADTBundle \ ADT \ SDK JAVAJDK-> C:\ Program Files \ Java \ jdk1.8.0_05 \

    1. 然后更新PATH变量如下: &#34 ;;%SDKHOME%\工具;%SDKHOME%\平台的工具;%JAVAJDK%\ bin中"
    2. 完成后再执行命令,在我的情况下是phonegap而不是cordova。它应该工作: 命令:phonegap build android

      让我知道它是怎么回事。

答案 2 :(得分:4)

我遇到了同样的问题,以前没有一个是为我工作的。问题是phonegap与Android API 20不兼容。

首先确保已设置所有环境变量nedded:

export ANT_HOME=/usr/share/ant
export JAVA_HOME="/usr/lib/jvm/java-7-openjdk-amd64"
export PATH=${PATH}:~/sdk/adt-bundle-linux-x86_64-20140702/sdk/platform-tools/:~/adt/adt-bundle-linux-x86_64-20140702/sdk/tools:$JAVA_HOME/bin:$ANT_HOME/bin

转到shell并运行android,然后检查API 19并安装它:

$ android

现在使用您之前下载过的API 19从android avd创建一个设备:

$ android avd

现在尝试将平台添加到cordova:

$ cordova platform add android

或者使用cordova check script检查要求(〜/ .cordova / lib / android / cordova / 3.5.0 / bin / check_reqs)

答案 3 :(得分:2)

您下载了Android SDK吗?

尝试在命令行或终端

中键入命令'android'

请参阅我在此输入的答案:

answer

答案 4 :(得分:0)

尝试这个

使用brew安装ant

通过在终端中执行以下命令来下载并安装Homebrew:

ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install)"

执行

,通过Homebrew安装Apache Ant
brew install ant

再次运行PhoneGap构建,它应该成功编译并安装您的Android应用程序。