关于Java中ANT的配置和使用
[来源] 达内 [编辑] 达内 [时间]2012-09-17
看到Ubuntu论坛中Java版里边几乎都是讨论Eclipse和Netbeans的使用和配置,很少见到有关于ANT的。其实ANT是学Java必不可少的一样工具,即Java进行持续整合不可少的工具。
目前说来,几乎每一个开源的知名Java项目(如Spring, Hibernate, Struts, Veiocity...)都会提供相应的ANT Build文件。
Java的配置就不多说了,最重要的是要有JAVA_HOME这个环境变量。
ANT的配置也很简单:
1. 去这里下载一个ANT的压缩包:
2. 将apache-ant-
3. 设置环境变量,我采用的方法是编辑~/.bashrc文件对终端程序:
代码:
sudo vim ~/.bashrc
在该文件里边添加:
代码:
export ANT_HOME="/home/jack/JavaLibraries/apache-ant-1.7.0"
export PATH="${PATH}:${ANT_HOME}"
重启终端程序再输入:
ant -version
如果出现:Apache Ant version 1.7.0 compiled on December 13 2006
或者类似的,就说明ANT配置成功。
接下来就是关于ANT的build.xml文件,这也是使用ANT的最重要的部分。在开始任何一个项目的时候,都应该确定自己项目的目录结构,当然,你也可以设计一种通用的目录结构,以下是我常用的目录结构:
代码:
+
+ src // 源码文件夹
+ java // Java实现代码
+ test // 测试代码
+ build // Class文件输出文件夹
+ classes
+ test
+ doc // 文档目录
+ src // 文档的源码(如Docbook XML或者latex)
+ api
+ test // 测试文档
+ html
+ resources // Images, CSS...
+ lib // Java包
+ build
+ runtime
如果是WEB开发的项目,目录结构就有所不同,例如会添加web文件夹,里边包含了整个WAR文件里的所有内容,这样打包就非常方便。
目录结构确定好后,开始编写build.xml。Build文件的编写是很有学问的,呵呵,和目录结构一样,可以编写一个通用的。一般的Build文件主要由三大部分组成:Properties, Paths和Targets。Properties就不用说了,定义了一系列属性,如源码文件夹的位置,项目的名字等等;Paths主要定义了一系列的路径,如Classpath等等;Targets是最重要的,每一个Target都是一个ANT的目标,在命令行上输入ant
关于Properties的定义,有两种做法:
1. 直接用XML进行编写
2. 用Java Properties文件编写,然后进行导入
我想是个人就会选择第二种(当然,也要看情况而定),因为更简单。
针对于以上的目录结构,内容如下:
代码:
src.dir = src
= ${src.dir}/java
= ${src.dir}/test
bin.dir = build
= ${bin.dir}/classes
= ${bin.dir}/test
lib.dir = lib
= ${lib.dir}/build
lib.rt = ${lib.dir}/runtime
doc.dir = doc
doc.api = ${doc.dir}/api
= ${doc.dir}/test
doc.html = ${doc.dir}/html
doc.pdf = ${doc.dir}/pdf
doc.rsc = ${doc.dir}/resources
有了这个以后,就可以在build.xml中进行导入:
有了这些属性,编写Build文件就方便了。在Java开发中,最烦人的就是关于Classpath的设置,幸运的是ANT为我们提供了非常方便的Classpath设置方法:
代码:
target="1.5"
srcdir="${}"
destdir="${}"
classpathref="master.cp" />
classpathref="master.cp"
version="true"
author="true"
windowtitle="Websterm API">
Websterm API Documentation
]]>
