3

我正在尝试通过命令行使用Apache Ant构建一个 Android 项目,但它给了我Build Failed并出现以下错误语句: Java.io.IOException:无法运行程序。“..\android_sdk\平台工具\aapt.exe”

D:\MediaSync\build.xml:429:执行失败:java.io.IOException:无法运行程序“..\android_sdk\platform-tools\aapt.exe”

我对这件事很陌生,所以我不知道如何克服这个错误。搜索了很多,但仍然摸不着头脑。
任何人对此有任何想法,请告诉我。

编辑: 这是我的 Buil.xml 文件的一部分

<!-- General SDK location -->
<property name="sdk-folder" value="D:/sdk" />  

<!-- Preset tools location -->
<property name="android-platform-tools" value="${sdk-folder}/platform-tools"/> 

 <!-- Tools -->
<condition property="aapt" value="${android-platform-tools}/aapt.exe" else="${android-platform-tools}/aapt" >
    <os family="windows"/>
</condition>  


<!-- Generate the R.java file for this project's resources. -->
<target name="resource-src" depends="init, localization, replace-template-values">
    <echo>Generating R.java / Manifest.java from the resources...</echo>
    <exec executable="${aapt}" failonerror="true">
        <arg value="package" />
        <arg value="-m" />
        <arg value="-J" />
        <arg value="${outdir-r}" />
        <arg value="-M" />
        <arg value="${outdir.manifest}/AndroidManifest.xml" />
        <arg value="-S" />
        <arg value="${resource-dir}" />
        <arg value="-I" />
        <arg value="${android-jar}" />
    </exec>

</target>
4

5 回答 5

3

确保 aapt.exe 安装在相对于您的 build.xml 文件 (../android_sdk/platform-tools) 的正确路径中。该路径可能与您的项目相关,但与 build.xml 无关。

于 2013-05-12T12:43:47.350 回答
3

我在 64 位 Fedora 平台上遇到了同样的问题,最后解决了这个问题:http: //blog.mx17.net/2012/10/25/android-on-ubuntu-ioexception-on-aapt/

由于试图在 64 位架构上运行 32 位程序而失败。也许这会有所帮助。

于 2013-05-15T22:35:55.740 回答
1

intellij android studio 和其他 IDE 中存在一个错误,该错误指向现在存在于 build-toos 中的某些可执行文件/库的平台工具。目前的解决方法是制作必要文件的 sim-links。

所以在linux/mac上

platform-tools$ ln -s ../build-tools/android-version-blah/bin/appt appt

platform-tools$ ln -s ../build-tools/android-version-blah/lib lib

对于 Windows,安装 LinkExtensions 并将 ln 替换为mklink并阅读mklink不带 args 的输入帮助。在 Windows 中,该文件为 appt.exe

于 2013-05-23T04:51:07.677 回答
1

您的错误消息说:

D:\MediaSync\build.xml:429:执行失败:java.io.IOException:无法运行程序“..\android_sdk\platform-tools\aapt.exe”

而您的 aapt.exe 位于:

C:\android-sdk-windows\sdk\platform-tools\aapt.exe\

显然 build.xml 试图搜索D:\android_sdk\platform-tools\aapt.exe这是错误的路径。

应该有一个属性供您指定 aapt.exe 的路径,或者它从系统的 PATH 变量中读取。

要获得解决方案,请在 build.xml 中的第 429 行附近发布行。在第 429 行,应该有一个<exec>任务,一定要包含该任务的全部内容(从 复制<exec ...></exec>)。

于 2013-05-13T07:02:44.903 回答
0

您可以做的快速修复是将 aapt.exe 和 lib 文件夹从 build-tools 复制到 platform-tools 文件夹。

于 2013-08-19T09:19:38.630 回答