使用Ant构建Java项目
Ant项目背景简介
Ant作为优秀的项目构建工具,它的出现简化了我们在项目开发工程的繁琐,通过build.xml配置文件描述各种任务。然后,我们并不知道其实Ant也是从很简单的硬编码程序到现在的强大,但是他还是简单,不依赖、跨平台的特点,深得开发者的赞美。我们可以通过ant命令来执行各种项目中的编译、打包、测试、测试报告等操作。
Ant项目结构
-ant
- bin ant相关命令
- etc 一些模板文件
- lib 核心jar包
- manual 英文帮助文档
- ... 其他文件
创建ant项目的目录结构
注意:这里只是简单的项目案例,大家可以看到项目根路径中存在一个build.xml文件。
执行Ant任务后目录结构
注意:虚线生成的目录结构和实际build.xml配置有关,这里只是便于大家理解。
部署安装Ant环境
- 下载Ant项目:http://ant.apache.org/
-
解压项目到D:/buildtools/ant
-
追加Ant的bin文件夹路径到环境变量PATH
注意:我这里使用了ANT_HOME变量,当然你们可以直接使用路径。
-
在任意目录中使用ant命令测试。[cmd]
ant -version
-
eclipse内置了Ant,我们使用自己部署的ant环境
注意:anthome
将Java项目集成Ant
因为强大的eclipse已经集成了ant,我们创建了普通Java项目,转换为Ant项目是相当简单的。我们只需要在项目根目录中添加一个build.xml文本文件就行了。
编写build.xml配置任务
<project name="build">
<!-- 相当于声明一些常量,我们可以再后边的任务中使用 -->
<property name="src.dir" value="src"/>
<property name="bin.dir" value="classes"/>
<property name="out.dir" value="out"/>
<!-- 初始化任务 -->
<target name="init">
<!-- 创建文件夹 -->
<mkdir dir="${bin.dir}"></mkdir>
</target>
<!-- 编译源代码,并打jar包任务 -->
<target name="compile" depends="init ">
<!-- 变异任务 -->
<javac srcdir="${src.dir}" destdir="${bin.dir}" includes="**" includeantruntime="false"></javac>
<!-- 打包任务 -->
<jar basedir="${bin.dir}" destfile="${out.dir}/dest.jar"></jar>
</target>
</project>
编写完成,对build.xml文件点击鼠标右键 > 【Run As】 > 【Ant build】
Ant build
选项,默认情况调用的target名称为default,因此,build.xml中必须有default target。-
Ant build...
选项: 可以直接选择执行某个target。
本次项目目录结构
结束语
通过浏览Ant的帮助文档,可以发现Ant不单单可以执行这么简单的任务。
task list:
- 编译源代码
- 压缩/解压文件(Zip、Gzip)
- 文件操作
- FTP
- Junit集成测试
- SSH链接Linux
- 链接数据库执行SQL语句
- 签名Jar包
- 生成JavaDoc文档
- echo日志输出
- Email操作
- 等等……
推荐书籍
《Ant权威指南》