以前使用老版本的SDK ant打包是没有问题的(此处ant本猿没有用Eclipse自带的)。但是今天一直没有成功。
1.根据ant log提示首先找到了build.xml 84行的问题
<!-- 根据工程中的资源文件生成R.java文件 -->查到原因 aapt没有找到
<target name="gen-R" depends="init">
<echo>Generating R.java from the resources...</echo>
<exec executable="${aapt}" failonerror="true">
<arg value="package" />
<arg value="-f" />
<arg value="-m" />
<arg value="-J" />
<arg value="${outdir-gen}" />
<arg value="-S" />
<arg value="${resource-dir}" />
<arg value="-M" />
<arg value="${manifest-xml}" />
<arg value="-I" />
<arg value="${android-jar}" />
</exec>
</target>
同理aidl 、dx、apkbuilder都没有找到
<!-- 使用到的命令(当前系统为windows,如果系统为linux,可将.bat文件替换成相对应的命令) -->
<property name="aapt" value="${sdk-platform-tools}/aapt" />
<property name="aidl" value="${sdk-platform-tools}/aidl" />
<property name="dx" value="${sdk-platform-tools}/dx.bat" />
<property name="apkbuilder" value="${sdk-tools}/apkbuilder.bat" />
于是再向上一级
${sdk-platform-tools}=${sdk-folder}/platform-tools发现
aapt根就没有在<span style="font-family: Arial, Helvetica, sans-serif;">${sdk-platform-tools}路径下。</span>
<span style="font-family:Arial, Helvetica, sans-serif;">同理在</span><pre code_snippet_id="237032" snippet_file_name="blog_20140315_5_8894493" name="code" class="html">${sdk-folder}/build-tools下找到了不同版本号下的aapt
<span style="color:#ff0000;">原来新版的SDK将原先的编译相关的东西分版本管理在不同以往的路径了</span>
</pre>2.接下来又报了打包失败,原因与1.类似apkbuilder.bat这个批处理文件没有找到
升级了最新版的android sdk 4.2.2和adt22.0.1,发现apkbuilder.bat不见了,但是网上说3.0以后这个apkbuilder.bat已经被废弃了,目前的打包方式,都是基于apkbuilder.bat打包
http://*.com/questions/16620655/i-have-updated-android-sdk-to-rev-22-yesterday-and-there-is-no-apkbuilder-in-to
免费下载地址 CSDN:apkbuilder.zip
3.在原先的基础上将这个文件解压并将路径指定正确就没有问题了。