Cordova 构建失败,无法找到 ${appt}
Cordova build fails, can't find ${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 找不到 aapt 文件。 Ant 已安装:
ant -version
Apache Ant(TM) version 1.9.4 compiled on April 29 2014
ANDROID_HOME
和 PATH
也正确设置。我以前让cordova在这个系统上工作,现在它拒绝了。
cordova应该在项目目录中寻找appt吗?它不应该在 ANDROID_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 克隆而来的,因此它 可能 某处存在一些继承的不兼容性。
编辑:
刚刚在一个新项目上测试 'cordova build',它失败并出现同样的错误。
cordova build
正在使用的 Android SDK 24.3 中的 ant 命令似乎已损坏。我降级到以前的版本 (24.2.0),ant 现在可以正常工作了。
您可以从以下位置下载以前的SDK:
http://dl-ssl.google.com/android/repository/tools_r24.2-windows.zip
编辑:有更好的解决方案,请参阅下面的 kartikeya 的回答:
此外,如果您不使用 cordova,而是依靠 ant 来构建您的 android 项目,只需转到 gradle。
SDK 损坏...降级到以前的版本!
即,ant 版本 1.9.4 到 Ant 1.9.5 或降级 android skd tools
ant build 看起来肯定坏了。即使使用较旧的 SDK 对我来说仍然失败。我有 Cordova 4.2。我的解决方案是切换到 gradle 构建,它现在是 cordova 5 中的默认构建。(所以我猜你更新到 Cordova 5 但没有更新 android 项目)
$ npm install -g cordova
项目需要更新才能使用 gradle build
$ cordova platform update android
建筑现在应该使用 gradle
$ cordova build android
恢复到 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
将 Android SDK Tools 升级到 24.3.3 解决了问题。
无需降级或升级您的 SDK。按照这个步骤。
转到 .../sdk/tools/ant/build.xml 并在那里找到:
<!-- find location of build tools -->
<getbuildtools name="android.build.tools.dir" verbose="${verbose}" />
在下面添加:
<property name="aidl" location="${android.build.tools.dir}/aidl${exe}" />
<property name="aapt" location="${android.build.tools.dir}/aapt${exe}" />
<property name="dx" location="${android.build.tools.dir}/dx${bat}" />
<property name="zipalign" location="${android.build.tools.dir}/zipalign${exe}" />
您需要使用以下命令:
cordova platform update android@5.0.0
命令 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 找不到 aapt 文件。 Ant 已安装:
ant -version
Apache Ant(TM) version 1.9.4 compiled on April 29 2014
ANDROID_HOME
和 PATH
也正确设置。我以前让cordova在这个系统上工作,现在它拒绝了。
cordova应该在项目目录中寻找appt吗?它不应该在 ANDROID_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 克隆而来的,因此它 可能 某处存在一些继承的不兼容性。
编辑:
刚刚在一个新项目上测试 'cordova build',它失败并出现同样的错误。
cordova build
正在使用的 Android SDK 24.3 中的 ant 命令似乎已损坏。我降级到以前的版本 (24.2.0),ant 现在可以正常工作了。
您可以从以下位置下载以前的SDK: http://dl-ssl.google.com/android/repository/tools_r24.2-windows.zip
编辑:有更好的解决方案,请参阅下面的 kartikeya 的回答:
此外,如果您不使用 cordova,而是依靠 ant 来构建您的 android 项目,只需转到 gradle。
SDK 损坏...降级到以前的版本! 即,ant 版本 1.9.4 到 Ant 1.9.5 或降级 android skd tools
ant build 看起来肯定坏了。即使使用较旧的 SDK 对我来说仍然失败。我有 Cordova 4.2。我的解决方案是切换到 gradle 构建,它现在是 cordova 5 中的默认构建。(所以我猜你更新到 Cordova 5 但没有更新 android 项目)
$ npm install -g cordova
项目需要更新才能使用 gradle build
$ cordova platform update android
建筑现在应该使用 gradle
$ cordova build android
恢复到 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
将 Android SDK Tools 升级到 24.3.3 解决了问题。
无需降级或升级您的 SDK。按照这个步骤。 转到 .../sdk/tools/ant/build.xml 并在那里找到:
<!-- find location of build tools -->
<getbuildtools name="android.build.tools.dir" verbose="${verbose}" />
在下面添加:
<property name="aidl" location="${android.build.tools.dir}/aidl${exe}" />
<property name="aapt" location="${android.build.tools.dir}/aapt${exe}" />
<property name="dx" location="${android.build.tools.dir}/dx${bat}" />
<property name="zipalign" location="${android.build.tools.dir}/zipalign${exe}" />
您需要使用以下命令:
cordova platform update android@5.0.0