Ant 学习笔记
1.下载Ant
官方网站http://ant.apache.org/bindownload.cgi
下载最新版本
.ziparchive: apache-ant-1.9.4-bin.zip [PGP] [SHA1] [SHA512] [MD5
2. 解压缩后,拷贝到指定目录, 我放在 E:\Android\Ant\Tools\ant
目录结构为
-bin
-etc
-lib
-manual
.....
3. 添加环境变量 ANT_HOME = E:\Android\Ant\Tools\ant
4. 添加到PATH,把 %ANT_HOME%\bin; 添加到PATH
5. 把Eclipse的project升级,命令行为
android update project --name <project_name> --target <target_ID> --path <path_to_your_project> --subprojects
解释一下,
android: 这个是sdk里面的命令,例如我的是在 C:\Program Files (x86)\Java\adt-bundle-windows-x86\sdk\tools\android.bat最好把这个路径加到PATH里面去。
--name:注意是两个横斜杠
<project_name>: 项目名称,一般就是eclipse里面显示的project name
--target:编译的目标平台
<target_ID>: 目标平台ID。如果不知道,先运行一下 android list target,会输出如下结果,每一条前面的1、2、3、4 就是 target ID

--path: 要升级的project 路径。
<path_to_your_project>: Project 路径
--subprojects : 如果有子项目,加上这个一并更新。

参考文档:http://developer.android.com/tools/projects/projects-cmdline.html
如果引用了多个lib project,最好逐个升级.
6. 升级Project完成后,cd 到project文件夹,运行Ant debug,就可以编译了。
最后出现成功的提示

到bin文件夹,可以看到编译好的apk。
7.Release 版本
增加一个文本文件,内容如下
#keystore的路径,必须使用正斜杠
key.store=E:/Android/keystone/my.keystore
#keystore的密码
key.store.password=test1234
#alias名
key.alias=test
#alias密码
key.alias.password=test1234
第一行 也可以使用相对路径。
文件名为 ant.properties,放到Project文件夹里面。
运行Ant Release,提示成功后,到bin文件夹里面找release的APK。
8. 我遇到的编译失败
8.1 project的 java build path不正常。
通常都是gen和src,那个project多了一个internal,删掉即可。

8.3 有些java文件如果不是UTF-8,会比较麻烦,建议按照屏幕的提示逐个修改。
8.4 依赖的项目比较多,逐个编译一遍,逐个排查
8.5 解决过问题之后,先运行一下Ant Clean,在运行Ant Debug/Release
参考文档:http://www.cnblogs.com/yaozhongxiao/p/3523061.html
Ant 学习笔记的更多相关文章
- 【转】Ant学习笔记——自己构建Ant编译环境
自从年初开始用NetBeans6.0,才接触到Ant. 这是今年6月份的一篇Ant学习笔记.安装 1.下载并构建环境. 去官网下载src包和bin包.解压缩它们到同一目录,运行build.bat, ...
- Ant学习笔记
前言:这段时间在学习Ant,发现这是一个很强大的构建工具.你可能使用了很长一段时间,才发现Ant能做数不完的事.总之,个人觉得,Ant学习门槛低,入门简单,能大概看懂程序,写一些简单的脚本即可,剩下在 ...
- Ant学习笔记(1) 基础知识
Ant Apache Ant 是一个基于 Java的构建工具. 下载Ant google.baidu.Windows用户下载zip格式.解压即可. Windows安装Ant Ant本质上是一个Java ...
- Ant学习笔记(2) 在Eclipse中使用Ant
Eclipse默认提供了对Ant的支持,在Eclipse中不需要安装任何插件就能直接编辑和运行Ant.Eclipse中包含了一个Ant脚本编辑器,Ant脚本编辑器提供了对Ant脚本的语法搞来高亮.自动 ...
- ant学习笔记-taskdef
1.声明task jar包中指定的task <taskdef name="xmltask“ classname="com.oopsconsultancy.xmltask.an ...
- maven权威指南学习笔记(三)——一个简单的maven项目
目标: 对构建生命周期 (build lifecycle),Maven仓库 (repositories),依赖管理 (dependency management)和项目对象模型 (Project O ...
- 《Java学习笔记(第8版)》学习指导
<Java学习笔记(第8版)>学习指导 目录 图书简况 学习指导 第一章 Java平台概论 第二章 从JDK到IDE 第三章 基础语法 第四章 认识对象 第五章 对象封装 第六章 继承与多 ...
- android cocos2d-x for Android安装和学习笔记(请用adt-bundle21.1或以上导入)
引用:http://weimingtom.iteye.com/blog/1483566 (20121108)注意:这篇文章用cdt编译ndk工程的内容已过时(现在可以用adt-bundle,避免配置繁 ...
- Hadoop学习笔记(3)——分布式环境搭建
Hadoop学习笔记(3) ——分布式环境搭建 前面,我们已经在单机上把Hadoop运行起来了,但我们知道Hadoop支持分布式的,而它的优点就是在分布上突出的,所以我们得搭个环境模拟一下. 在这里, ...
随机推荐
- CocosCreator 场景转换API
一.CocosCreator场景的切换API: cc.director.loadScene( ‘场景名称’);//场景切换必须使用的API 通过场景名称进行加载场景时,常用的就是上边的API,但是版本 ...
- webstorm更改字体大小
webstorm是一款不错的开发软件,一起来看看webstorm怎么更改字体大小. 1,打开该软件后,点击上面菜单栏的“文件”/File,找到其子菜单中的“设置”/Setting,点击打开. 2,在新 ...
- spring源码分析系列 (5) spring BeanFactoryPostProcessor拓展类PropertyPlaceholderConfigurer、PropertySourcesPlaceholderConfigurer解析
更多文章点击--spring源码分析系列 主要分析内容: 1.拓展类简述: 拓展类使用demo和自定义替换符号 2.继承图UML解析和源码分析 (源码基于spring 5.1.3.RELEASE分析) ...
- Oracle ORA-12541:TNS:无监听程序
背景:自己机子做oracle服务器,其他机子可以ping得通我的机子,但是jdbc就是连不上,后来用plsql连出现无监听程序.... 我昨天重新安装Oracle后,用PL/SQL Developer ...
- Linux学习笔记11—VSFTP的搭建
1.查看是否安装vsftp rpm -qa | grep vsftpd 如果出现vsftpd-2.0.5-21.el5,说明已经安装 vsftp 安装vsftp yum -y install vsft ...
- Qt.网络开发-通过http的get方式获取数据
Qt 是一个跨平台的 C++图形用户界面库,由挪威 TrollTech 公司于1995年底出品. 它是个跨平台的C++图形开发平台 我们在这章中可以学习简单的网络数据获取并显示的内容 本文基于Qt C ...
- java内部类(三)
内部类之方法内部类 方法内部类就是内部类定义在外部类方法中,方法内部类只在该方法内部可见,即只在该方法内部使用. 注意:由于方法内部类不能在外部类的方法以外的地方使用,因此方法内部类不能使用访问控制符 ...
- 解决 Mac 的 Terminal 中,Java 乱码的问题
在 .bash_profile 文件中,增加如下行: export JAVA_TOOL_OPTIONS=-Dfile.encoding=UTF-8 然后,重新加载该配置 source .bash_pr ...
- c++中string类对象和字符数组之间的相互转换
string类在c++中是一个模板类,位于名字空间std中,注意这里不是string.h,string.h是C字符串头文件. 将string类型转换为字符数组char arr[10];string s ...
- jdk TreeMap工作原理分析
TreeMap是jdk中基于红黑树的一种map实现.HashMap底层是使用链表法解决冲突的哈希表,LinkedHashMap继承自HashMap,内部同样也是使用链表法解决冲突的哈希表,但是额外添加 ...