Ant能干什么,编译?打包!
Ant轻便,灵巧,不像Maven一般沉重。
但是,这是我之前的看法。之前一直使用Eclipse自带的编译工具进行编译,然后采用ant进行打包;但是Eclipse编译工具编译之后的jar包参数名称之类的都丢失了,变成了arg0,arg1这种;对于引用方而言十分不友好(当然可以导出javadoc,但是那不是费二遍事嘛),最近获知可以通过采用javac进行编译,指定-g:vars,即可保证编译之后参数名称保留。
于是尝试着将javac加入到Ant文件中,其实直到此时我才知道eclipse是自带编译器的,因为网上有帖子讲述分析eclipse的编译器的class文件和javac编译文件不同,细节没看,确定一点,这两者应该不是一回事。但是我添加了javac之后,运行builder.xml发现报错,告知slf4.jar没有。
直到此时我才清晰的了解到:我们采用Eclipse那套机制,包括工程引用,jar包引用以及Eclipse自带的编译器,这些是成套的东东,如果你想要使用Ant来进行编译,那么需要你将所有的引用关系,以及引用jar包关系,全部配置到Ant配置文件里面,这样Eclipse退化为了一个代码结构管理(当然还包括JIT编译找错)的小工具。
如果这样我还是使用Eclipse来进行管理和编译吧,采用Ant编译成本太高了,他还是做做打包这件事我觉得是最好的。
声明变量
<project>
<property name="dir.buildfile" value="."/>
<property name="dir.workspace" value="${dir.buildfile}/.."/>
<property name="dir.jarfile" value="D:/tmp/setup"/>
"."代表(Eclipse)工程根目录
复制文件夹
<copy todir="${dir.jarfile}">
<fileset dir="${dir.buildfile}">
<include name="install/"/>
<include name="install_monitor/"/>
<include name="scripts/"/>
</fileset>
</copy>
这里注意install/代表把文件夹以及文件夹里面的东西都拷贝过去;install则代表只是拷贝空文件夹;如果没有include节点,代表把${dir.buildfile}所有的文件拷贝到todir下面。
Ant能干什么,编译?打包!的更多相关文章
- Ant自己主动编译打包&公布 android项目
Eclipse用起来尽管方便,可是编译打包android项目还是比較慢,尤其将应用打包公布到各个渠道时,用Eclipse手动打包各种渠道包就有点不切实际了,这时候我们用到Ant帮我们自己主动编译打包了 ...
- Ant自动编译打包&发布 android项目
Eclipse用起来虽然方便,但是编译打包android项目还是比较慢,尤其将应用打包发布到各个渠道时,用Eclipse手动打包各种渠道包就有点不切实际了,这时候我们用到Ant帮我们自动编译打包了. ...
- 通过ant脚本编译打包android工程
通过ant脚本,编译打包android工程 1.Android程序编译.打包.签名.发布的三种方式: 方式一:命令行手动编译打包 方式二:使用ant自动编译打包 方式三:使用eclipse+AD ...
- Android - Ant自动编译打包android项目 -- 1(转)
1. 背景: Eclipse用起来虽然方便,但是编译打包android项目还是比较慢,尤其当要将应用打包发布到各个渠道时,用Eclipse手动打包各种渠道包就有点不切实际了,这时候我们用到Ant帮我 ...
- Andorid进阶7—— Ant自动编译打包&发布 android项目
http://www.cnblogs.com/tt_mc/p/3891546.html Eclipse用起来虽然方便,但是编译打包android项目还是比较慢,尤其将应用打包发布到各个渠道时,用Ecl ...
- Ant自动编译打包android项目(转载)
1.1 Ant安装 ant的安装比较简单,下载ant压缩包 http://ant.apache.org (最新的为1.9.3版本),下载之后将其解压到某个目录(本人解压到E:\Progra ...
- (转载)Ant自动编译打包android项目
1 Ant自动编译打包android项目 1.1 Ant安装 ant的安装比较简单,下载ant压缩包 http://ant.apache.org (最新的为1.9.3版本),下载之后将其解压 ...
- ant自动编译打包android项目
源代码及可执行文件下载地址:http://files.cnblogs.com/rainboy2010/antdemo.zip Android打包APK的流程如下: 下面我们开始尝试使用ant进行ap ...
- java ant 编译打包build.xml完整配置范例
java ant 编译打包build.xml完整配置范例 <?xml version="1.0" encoding="UTF-8" ?> <p ...
随机推荐
- ETL应用:一种处理接口的Pro*C实现方法
2007年,当时项目所有ETL采用C编写,实现了ETL基本功能.当接口很多时,为保证文件获取效率,做好接口可配置:文件维护中经常会出现接口晚到情况,需要有一种方法能将接口晚到信息写入数据库,便于短信告 ...
- requests.post处理Content-Type: multipart/form-data的请求
前几天遇到一个需求,要调用一个接口发送请求,抓包之后得到的数据是这样的 上网看了一些资料得知,原来这个接口的数据是通过multipart/form-data格式传过去的,multipart/form- ...
- seajs 入门
最近想搞搞JS模块化, 读到了园子里的一篇好文: http://www.cnblogs.com/lvdabao/p/js-modules-develop.html 看里面讲seajs不错, 于是想学 ...
- SwfUpload文件上传
SWFUpload是一个flash和js相结合而成的文件上传插件,其功能非常强大.以前在项目中用过几次,但它的配置参数太多了,用过后就忘记怎么用了,到以后要用时又得到官网上看它的文档,真是太烦了.所以 ...
- MySql数据库的主从配置
主服务器 192.168.7.182 Centos6.5 MYSQL5.6.10 从服务器 192.168.112.7 Centos6.5 MYSQL5.6.10 主服务器配置(192.168.7.1 ...
- Linux之Xinetd服务介绍
一.概念:1.独立启动的守护进程:stand-alone,每个特定服务都有单独的守护进程,这个处理单一服务的始终存在的进程就是独立启动的守护进程. 2.超级守护进程:多个服务统一由一个进程管理,该进程 ...
- 【51nod1519】拆方块[Codeforces](dp)
题目传送门:1519 拆方块 首先,我们可以发现,如果第i堆方块被消除,只有三种情况: 1.第i-1堆方块全部被消除: 2.第i+1堆方块全部被消除:(因为两侧的方块能够保护这一堆方块在两侧不暴露) ...
- WIN7 X64 PASSUAC 源码
// Passuac.cpp : Defines the entry point for the console application. // #include "stdafx.h&quo ...
- Intel Code Challenge Elimination Round (Div.1 + Div.2, combined) C. Destroying Array
C. Destroying Array time limit per test 1 second memory limit per test 256 megabytes input standard ...
- Codeforces 938E Max History:排列 + 逆元【考虑单个元素的贡献】
题目链接:http://codeforces.com/problemset/problem/938/E 题意: 定义f(a): 初始时f(a) = 0, M = 1. 枚举i = 2 to n,如果a ...