java编译那些事通过提到ant编译Java工程,如今扩大到用它来构建Android目,事实上道理是相通的。变化的仅仅是使用的形式。ant构建相比IDE的优点是多个子项目使用自己定义jar包时,ant能够更好的完毕自己主动化构建。一个命令就搞定整个项目的编译而不用手工的导出jar包然后再将其放到指定文件夹。

这就是高效的构建工具所标榜的。

先来说说ant在Linux下的安装(那篇文章写的太过简单,事实上也是非常easy的,别看mannul中写的那么复杂)。

1.ant的安装

最简单的办法就是直接用Linux系统命令安装:
Ubuntu:
sudo apt-get install ant
Fedora:
sudo yum install ant
缺点是软件server上的版本号太过老旧。我在Fedora 14(这系统版本号就够老的了)安装版本号是1.7.1,而最新版本号是1.9.4,所以还是推荐直接从官网下载最新的版本号安装。假设想看源代码就选择Source Edition。而我选择了Binary Edition。就像是免安装版软件一下,过程例如以下:

1)下载。zip或其它格式安装包,解压到你想放置的路径:

[linc@localhost ant]$ cp ~/Downloads/apache-ant-1.9.4-bin.zip .
[linc@localhost ant]$ unzip apache-ant-1.9.4-bin.zip
[linc@localhost ant]$ cd apache-ant-1.9.4
[linc@localhost apache-ant-1.9.4]$ ls
bin fetch.xml INSTALL lib manual README
etc get-m2.xml KEYS LICENSE NOTICE WHATSNEW

2)环境变量设置

在.bashrc中加入例如以下内容:

15 export ANT_HOME=/home/linc/dev/ant/apache-ant-1.9.4
16 export JAVA_HOME=/usr/java/jdk1.6.0_25
17 export PATH=${PATH}:${ANT_HOME}/bin

为了让改动马上生效。运行一下 source ~/.bashrc

3)检查是否成功

运行ant,如打印以下的信息,说明ant起作用了。

[linc@localhost apache-ant-1.9.4]$ ant
Buildfile: build.xml does not exist!
Build failed

2.build.xml

ant的编译是基于build.xml配置文件的,而Android SDK已经为我们提供了一个模板,详见<sdk>/tools/ant/build.xml
,更为美妙的是我们能够用android工具来生成build.xml。
android工具是<sdk>/tools下的工具。从名称能够看出它的能力是非常强的。这个工具以后会单独找个机会说,先来简介一下它是怎样帮忙创建build.xml文件的,我们首先看一下帮助:

[linc@localhost BallGame]$ android -h update project

       Usage:
android [global options] update project [action options]
Global options:
-h --help : Help on a specific command.
-v --verbose : Verbose mode, shows errors, warnings and all messages.
--clear-cache: Clear the SDK Manager repository manifest cache.
-s --silent : Silent mode, shows errors only. Action "update project":
Updates an Android project (must already have an AndroidManifest.xml).
Options:
-l --library : Directory of an Android library to add, relative to this
project's directory.
-p --path : The project's directory. [required]
-n --name : Project name.
-t --target : Target ID to set for the project.
-s --subprojects: Also updates any projects in sub-folders, such as test
projects.

除了參数-p路径是必须的,其它參数都能够不带。

可是建议名称-n要加上。否则会默认以Activity名称来命名。-t能够不做改动,项目的Target Id事实上就是指Android API的版本号,我们能够查看项目的project.properties,以此为基准。例如以下:

[linc@localhost BallGame]$ tail project.properties 

...
# Project target.
target=android-4

进入原有项目BallGame文件夹。输入命令例如以下:

[linc@localhost BallGame]$ android update project  -p .
Updated local.properties
No project name specified, using Activity name 'MainActivity'.
If you wish to change it, edit the first line of build.xml.
Added file ./build.xml
Added file ./proguard-project.txt

也能够指定更全的參数:

[linc@localhost BallGame]$ android update project  -p . -n BallGame -t android-4
Updated project.properties
Updated local.properties
Updated file ./build.xml
Updated file ./proguard-project.txt

至此。build.xml在我们不动一枪的情况下搞定了。

3.编译

运行ant debug。一个debug的apk就编译出来了。

本文以一个最简单的Android项目为例,讲状态ant安装与使用。

接下来说说复杂的项目ant建。

版权声明:本文博客原创文章。博客,未经同意,不得转载。

Android高效的应用程序开发工具集1---ant构建一个简单的Android工程的更多相关文章

  1. 微信小程序开发工具使用与设计规范(二)

    [未经作者本人同意,请勿以任何形式转载] 上一篇文章主要分析了微信小程序应用场景和优劣势.本篇你可以学习到: 如何使用小程序开发工具写一个Hello World 微信小程序设计规范 微信小程序项目结构 ...

  2. Open Source 开发工具集

    Open Source 开发工具集 转自:http://www.linuxforum.net原作者:gogoliu(Pooh-Bah) 编辑器: vi:老牌编辑器,在各个unix和unix-like平 ...

  3. 界面开发工具集Telerik UI for ASP.NET AJAX发布R2 2019

    Telerik UI for ASP.NET AJAX拥有构建ASP.NET AJAX和SharePoint应用程序的80+控件,将为任何浏览器和设备构建Web Forms应用程序的时间缩短一半.Te ...

  4. 微信小程序开发工具测评

    1月9日微信小程序正式上线.很多企业都希望能在这个.但是在技术开发的问题上,却不知道该如何下手.经过一些程序员不辞辛苦连夜测试,终于从十余款工具呕心沥血筛选出四款比较靠谱实用的微信小程序开发工具.接下 ...

  5. 微信小程序开发工具的数据,配置,日志等目录在哪儿? 怎么找?

    原文地址:http://www.wxapp-union.com/portal.php?mod=view&aid=359 本文由本站halfyawn原创:感谢原创者:如有疑问,请在评论内回复   ...

  6. mac版微信web开发者工具(小程序开发工具)无法显示二维码 解决方案

    微信小程序概念的提出,绝对可以算得上中国IT界惊天动地的一件大事,这可能意味着一场新的开发热潮即将到来, 我也怀着激动的心情准备全身心投入其中,不过截止目前,在官方网站上下载的最新版本都无法使用,打开 ...

  7. 微信小程序开发工具中快捷键

    微信小程序开发工具表面上是没有更多的样式类的工具,例如缩进.隐藏代码什么的. 现在总结一下小程序开发工具常用的一些快捷键: 格式调整 Ctrl+S:保存文件Ctrl+[, Ctrl+]:代码行缩进Ct ...

  8. ubuntu系统安装微信小程序开发工具

    在ubuntu系统中安装微信小程序开发工具之前,先要安装wine与git 一.安装wine 1.如果您的系统是64位,启用32位架构(如果您还没有) sudo dpkg --add-architect ...

  9. 解决Mac版微信小程序开发工具打开后无法显示二维码

    问题描述: 正常情况下,打开微信小程序开发工具后,首页提示扫描二维码进行登陆,但是如果不显示二维码,当然无法登陆. 解决方案: 无法显示二维码肯定是程序运行哪里出错了,我们直接点击桌面图标是无法排查错 ...

随机推荐

  1. C——联合体(共同体)总结

    联合体的特点 1.联合体是一种结构,在这个结构中能够不同类型的成员,但同一时间仅仅能存放当中的一种. #include <stdio.h> union Demo { int a; char ...

  2. hadoop编程小技巧(7)---自己定义输出文件格式以及输出到不同文件夹

    代码測试环境:Hadoop2.4 应用场景:当须要定制输出数据格式时能够採用此技巧,包含定制输出数据的展现形式.输出路径.输出文件名称称等. Hadoop内置的输出文件格式有: 1)FileOutpu ...

  3. 图解SSIS监视文件夹并自动导入数据

    原文:图解SSIS监视文件夹并自动导入数据 演示案例:让系统自动监视文件夹,并把文件夹下面的excel文件导入到sql中,之后清空目录.这个过程以往都需要写程序来实现或者定时执行,现在可以用ssis来 ...

  4. 网络请求 http get post 一

    Http 定义了与server交互的不同方法.最主要的方法有4种.各自是Get POST PUT DELETE ,URL 全称资源描写叙述符,我们能够这样觉得一个URL地址,一个URL地址,它用于描写 ...

  5. C++使用简单的函数指针

    函数指针: 被调用函数指针必须包括函数的存储器地址,为了正常工作,指针还必须包括其它信息,这一参数列表指针的参数类型和返回类型的函数. 因此,当你声明一个函数指针,数的參数类型和返回类型.以及指针名. ...

  6. ABP之动态WebAPI

    ABP之动态WebAPI ABP的动态WebApi实现了直接对服务层的调用(其实病没有跨过ApiController,只是将ApiController公共化,对于这一点的处理类似于MVC,对服务端的 ...

  7. N-gram统计语言模型(总结)

    N-gram统计语言模型 1.统计语言模型 自然语言从它产生開始,逐渐演变成一种上下文相关的信息表达和传递的方式.因此让计算机处理自然语言.一个主要的问题就是为自然语言这样的上下文相关特性建立数学模型 ...

  8. 编程算法 - 阅读完整的文件(C++)

    阅读完整的文件(C++) 本文地址: http://blog.csdn.net/caroline_wendy C++: 把文本文件(txt)的全部内容读入字符串(string), 最高效的方法. 代码 ...

  9. UVa 10223 - How many nodes ?

    称号:气你一个整数n,问:多少节点可以产生n不同的二叉树. 分析:数论,卡特兰数.根据定义,你可以. 说明:请参阅http://blog.csdn.net/mobius_strip/article/d ...

  10. hdu 2066 一个人的旅行 最短路径

    一个人的旅行 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Sub ...