Cordova构建失败,找不到$ {appt}

命令cordova build android失败,输出如下

 BUILD FAILED F:\Programs\SDK\tools\ant\build.xml:597: The following error occurred while executing this line: F:\Programs\SDK\tools\ant\build.xml:649: The following error occurred while executing this line: F:\Programs\SDK\tools\ant\build.xml:694: Execute failed: java.io.IOException: Cannot run program "F:\code\asistenciaBT\platforms\android\CordovaLib\${aapt}" (in directory "F:\code\asistenciaBT\platforms\android\CordovaLib"): CreateProcess error=2, El sistema no puede encontrar el archivo especificado 

据我所知,ant无法findaapt文件。 安装了Ant:

 ant -version Apache Ant(TM) version 1.9.4 compiled on April 29 2014 

ANDROID_HOMEPATH也正确设置。 我之前已经让cordova在这个系统上工作,现在它只是拒绝。

cordova应该在项目目录中寻找appt吗? 它不应该在ANDROID_HOME/build_toolsANDROID_HOME/build_tools吗?

如果需要,还需要进一步详细说明:

 npm -v 2.7.4 node -v v0.12.2 cordova -v 5.1.1 os: windows 8.1 pro 64 bits 

项目是从github克隆的,所以它可能在某处inheritance了一些不兼容性。

编辑:

刚刚测试了一个新项目的’cordova build’,它失败并出现同样的错误。

在Android SDK 24.3中看起来像ant命令被破坏了,而cordova build正在使用它。 我降级到之前的版本(24.2.0),ant现在工作正常。

您可以从http://dl-ssl.google.com/android/repository/tools_r24.2-windows.zip下载以前的SDK

编辑:有更好的解决方案,请参阅kartikeya的答案如下: https ://stackoverflow.com/a/31603358/1453578

此外,如果你不是使用cordova但是依靠ant来构建你的android项目,那么只需要移动到gradle。

无需降级或升级SDK。 请按照此步骤操作 转到… / sdk / tools / ant / build.xml并find:

    

添加以下行:

      

SDK被破坏…降级到以前的版本! 即,ant版本1.9.4 TO Ant 1.9.5或降级android skd工具

ant构建看起来绝对破碎 即使使用较旧的SDK仍然失败了。 我有Cordova 4.2。 我的解决方案是切换到gradle build,现在是cordova 5的默认设置。(所以我猜你更新到Cordova 5但没有更新android项目)

 $ npm install -g cordova 

需要更新项目以使用gradle构建

 $ cordova platform update android 

建筑现在应该使用gradle

 $ cordova build android 

将Android SDK工具升级到24.3.3解决了这个问题。

回到24.3.1解决了它。
osx: http : //dl.google.com/android/android-sdk_r24.3.1-macosx.zip

有关此问题的更多信息,请访问: https : //code.google.com/p/android/issues/detail?id = 176488

您需要使用以下命令:

  cordova platform update android@5.0.0