ANT是Apache的开源项目,目前在java的项目开发中被广泛的采用,功能非常的强大!因此我们有必要熟悉一下这个基于java的工具。

      关于ANT的相关介绍,请参考www.apache.org。

      首先我们应该安装ANT,从apache.org下载后直接安装到机器上就可以使用了。最好设置一下相关的环境变量,虽然很多系统能够自动识别出来。你还是应该设置ANT_HOME,java_HOME,PATH这几个环境变量,例如你的ANT安装在c:ANT1.6 你的java安装在c:j2sdk1.4.2.那么我们可以执行下面的操作设置环境变量(winxp):set ANT_HOME=c:ANT1.6set java_HOME= c:j2sdk1.4.2set PATH=%PATH%;%PATH%in设置好ANT以后 在command里面执行ANT -version看看是不是可以输出ANT的版本信息确认安装成功

      由于很多开发工具都内置了ANT,所以我直接以eclipse为例说明如何用ANT开发java项目,这里的project非常简单,新建一个项目为TestANT,然后再src里面写两个类内容如下:package com.north;

/** * @author P2800 * * TODO To change the template for this generated type comment go to * Window - Preferences - java - Code Style - Code Templates */public class TestANT{
    public static void main(String[] args)    {         new MyWork().print();      }}
package com.north;/* * Created on 2004-7-23 * * TODO To change the template for this generated file go to * Window - Preferences - java - Code Style - Code Templates */
/** * @author P2800 * * TODO To change the template for this generated type comment go to * Window - Preferences - java - Code Style - Code Templates */public class MyWork{    public void print()    {        System.out.println(System.getenv("CLASSPATH"));    }}        我不准备介绍过多的ANT的使用,通过察看用户手册你能很快上手的。而是直接给出build.xml的内容并对相关的内容作一些必要的说明。你在project TestANT里面新建一个文件build.xml,这个是ANT默认去寻找的文件,如果你用其他文件名的话你应该使用ANT -buildfile mybuildfile.xml<project default="jar" basedir="." name="myproject"> <description>this is my test for ANT tool</description> <property name="src" location="src"></property> <property name="dist" location="dist"></property> <property name="classes" location="classes"/>  <target name="init">  <tstamp></tstamp>  <mkdir dir="${dist}"/>  <mkdir dir="${classes}"/> </target>  <target name="compile" depends="init">  <javac srcdir="${src}" destdir="${classes}"/> </target>  <target name="jar" depends="compile">  <jar destfile="${dist}/myjar-${DSTAMP}.jar" basedir="${classes}"></jar> </target></project>这个build.xml并不复杂 他的目的是对project里面的源代码编译  然后打包到dist目录。在build.xml里面主要有如下几个元素:project  target  task property。其中property是让你去定义一些属性值,在以后的target或者task里面去使用。每个project必须指定一个default的target来执行。每个target是task的集合,用来完成一个特定的任务,一般比单个task复杂。target的一个参数depends说明了编译的顺序,例如在这里你要让jar执行的话,必须compile先执行,而compile执行之前init先执行。所以顺序是init->compile->jar。task是最重要的,在ANT中有很多内置的task,你看一下列表就会觉得ANT真是非常强大。具体你要使用哪个task就要参考他的文档。

      选中build.xml右键选择run->ANT build,你将在console看到Buildfile: C:eclipseworkspaceTestANTuild.xmlinit:    [mkdir] Created dir: C:eclipseworkspaceTestANTdist    [mkdir] Created dir: C:eclipseworkspaceTestANTclassescompile:    [javac] Compiling 2 source files to C:eclipseworkspaceTestANTclasses    [javac] Note: C:eclipseworkspaceTestANTsrccomorthMyWork.java uses or overrides a deprecated API.    [javac] Note: Recompile with -deprecation for details.jar:      [jar] Building jar: C:eclipseworkspaceTestANTdistmyjar-20040723.jarBUILD SUCCESSFULTotal time: 2 seconds这表示编译成功了,但是提示有个deprecated API在程序中使用了,这个留给读者去查看一下手册看如何显示出哪个API?