Home > 零敲碎打 > [Android]升级SDK tools后ant自动编译脚本错误

[Android]升级SDK tools后ant自动编译脚本错误

Android SDK Tools在升级到Version22之后,原来的ant自动编译脚本运行出现错误,导致为Jenkins配置的批处理脚本无法执行,一直发送错误邮件,经过调查后发现,Android SDK Tools升级后文件和目录结构发生了变化,主要包括以下
1.Android SDK Tools 22之后的版本中tools目录中将不包含

  • tools\zipalign.exe
  • tools\sqlite3.exe

以上两个文件,但是文件对应移动到了各自的platform-tool和build-tools下面,对应路径如下

  • build-tools\android-xx\zipalign.exe
  • platform-tools\sqlite3.exe

如果需要使用时,需要手动复制到tools下,或者放到PATH变量中去。

Windows

1
2
3
4
set PATH=c:\android-sdk-windows
set ANDROID_VER=android-13
set PATH=%PATH%;%ANDROID_HOME%\build-tools\%ANDROID_VER%\;
set PATH=%PATH%;%ANDROID_HOME%\platform-tools\;

Linux/MacOS

1
2
3
4
export ANDROID_HOME=/var/share/android-sdk-macosx;
export ANDROID_VER=android-13
export PATH=${PATH}:${ANDROID_HOME}/build-tools/${ANDROID_VER}/;
export PATH=${PATH}:${ANDROID_HOME}/platform-tools;

原来使用的脚本请参照
http://www.lidaren.com/archives/1328

另外,中tools\lib不包含EMMA覆盖率相关的以下三个文件

  • tools\lib\emma.jar
  • tools\lib\emma_device.jar
  • tools\lib\emma_ant.jar
    • 导致以下错误

      Could not load definitions from resource emma_ant.properties. It cou
      ld not be found.
      

      Problem: failed to create task or type emma
      Cause: The name is undefined.
      

      需要导入以上3个jar包到tools\lib下,如果有可能,建议同时放到ant的lib下

Categories: 零敲碎打 Tags: , ,
  1. No comments yet.
  1. No trackbacks yet.