【问题标题】:Installing PhoneGap, error executing command 'ant'安装 PhoneGap,执行命令“ant”时出错
【发布时间】:2014-02-24 10:47:31
【问题描述】:

通过 nodeJS 安装 PhoneGap 时,我在尝试运行我的应用程序时遇到错误(安装 phonegap 并创建应用程序有效):

C:\Users\arko\my-app>phonegap run android
[phonegap] detecting Android SDK environment...
[phonegap] using the local environment
[phonegap] adding the Android platform...
    [error] An error occured during creation of android sub-project.

C:\Users\arko\.cordova\lib\android\cordova\3.3.0\bin\node_modules\q\q.js:126
                throw e;
                      ^
Error: ERROR : executing command 'ant', make sure you have ant installed and add
ed to your path.
    at C:\Users\arko\.cordova\lib\android\cordova\3.3.0\bin\lib\check_reqs.js:47
:27
    at ChildProcess.exithandler (child_process.js:641:7)
    at ChildProcess.EventEmitter.emit (events.js:98:17)
    at maybeClose (child_process.js:743:16)
    at Socket.<anonymous> (child_process.js:956:11)
    at Socket.EventEmitter.emit (events.js:95:17)
    at Pipe.close (net.js:465:12)

所以我注意到我从未安装过 ANT,所以我安装了。我按照本教程:http://cleancodedevelopment-qualityseal.blogspot.nl/2012/11/how-to-install-phonegap-for-android.html 完成了它所说的一切。

它说你必须向 Path 变量添加东西的部分,它说只需添加:%ANT_HOME%\bin;但是我的路径以这个结尾:C:\Program Files\Windows Live\Shared - 所以我将它添加到它:;%ANT_HOME%\bin;

尝试再次运行 android 应用程序,并得到同样的错误。我用这个命令运行它:

phonegap run android

我做错了什么?

谢谢!

【问题讨论】:

标签: android node.js cordova ant


【解决方案1】:

可能你有一个新版本的cordova,我看到在合作伙伴机器上安装了cordova 3.5.0版本,在我的机器上安装了3.4.0版本,可能是ant版本与新版本不兼容科尔多瓦的(他和我有 ant 版本 1.9.4)。

尝试在 node.js 控制台中使用此命令安装旧版本的 cordova:

    npm install -g cordova@3.4.0-0.1.0 

然后再次运行命令。

其他原因:验证您的路径变量是否配置正确..

我的英文不太好,但希望能帮助你解决问题。

【讨论】:

  • @Vladius 太好了!!
【解决方案2】:
Variable: ANDROID_HOME Value: C:\Development\adt-bundle\sdk

Variable: ANT_HOME Value: C:\Development\apache-ant-1.9.2

Variable: JAVA_HOME Value: C:\Program Files\Java\jdk1.6.0_45

然后定义系统路径

%JAVA_HOME%\bin;%ANT_HOME%\bin;%ANDROID_HOME%\platform-tools;%ANDROID_HOME%\tools;

重启你的电脑

Cannot get ant installed properly for phonegap using eclipse and windows 8

【讨论】:

  • 分号后的每个参数避免使用空格键。
【解决方案3】:

在您的系统变量中设置ant 的路径,并在您的用户变量中使用该变量路径。 两者都设置好后,重启电脑使其生效。

用户变量:

PATH = %ANT_HOME%/bin

系统变量:

ANT_HOME = c:\your directory

ANT_HOME = C:\ant

【讨论】:

    【解决方案4】:

    仔细检查您将 ANT_HOME 设置为什么,您可以通过打开“命令提示符”(开始 -> 运行 -> CMD)并输入 echo %ANT_HOME% 来做到这一点

    检查这是否是您安装 ANT 的正确目录,否则设置它。 (您链接到的 URL 告诉您如何操作)。

    您可以通过在“命令提示符”窗口中键入 ant -version 来验证 ANT“安装”。

    【讨论】:

    • C:\Users\arko>echo %ANT_HOME% C:\Program Files\ANT\apache-ant-1.9.3 C:\Users\arko>ant -version 找不到 tools.jar .预计在 2013 年 12 月 23 日编译的 C:\Program Files\Java\jre6\lib\tools.jar Apache Ant(TM) 版本 1.9.3 中找到它 C:\Users\arko>
    • 好像JRE没有tools.jar文件,需要下载安装JDK,检查*.com/questions/2618281/…
    【解决方案5】:

    ¿您是否创建了 JAVA_HOME 和 ANT_HOME 变量? ¿ 您是否也添加到 PATH 中?

    【讨论】:

    • 注意:您需要打开一个新的命令提示符来获取更改的变量。 PATH 变量需要包含“%ANT_HOME%\bin”、“%JDK_HOME%\bin”、“%ANDROID_SDK%\tools”和“%ANDROID_SDK%\platform-tools”。注意变量名ANT_HOME、JDK_HOME和ANDROID_SDK是任意的,当然必须设置才能使用,否则可以使用全路径来设置PATH变量。例如 PATH={...other_stuff...};C:\data\dev\Apache\Ant\apache-ant-1.9.4\bin;C:\data\dev\Android\android-sdk\tools;C :\data\dev\Android\android-sdk\platform-tools;C:\Program Files (x86)\Java\jdk1.8.0_11\bin"
    【解决方案6】:

    不用创建 ant 变量 ANT_HOME,只需将绝对路径插入到您的 Windows 系统变量 PATH 中,如下所示:

    c:\yourDirectory\ant\bin;
    

    那么它应该可以正常工作/运行!

    【讨论】: