Apache Ant 简介,apacheant简介


 

Apache Ant 简介

    Apache Ant是目前事实上的Java应用的标准build脚本工具。使它大受欢迎的一个主要愿意是它的和灵活,允许程序员创建自己的Task来对Ant进行扩展。     本文主要内容有:
  • 对Ant的简介
  • 介绍常用的Ant脚本

Ant的安装

    Apache Ant是Apache基金会下的一个项目,可以在http://ant.apache.org下载到。根据不同的平台下载不同的压缩包,直接解压到安装目录就可以了,不需要安装。解压后,在PATH环境变量中添加Ant的安装目录。

Ant简介

    我想大家都听说过很多build工具,如make,maven等。那么为什么我们选择Ant呢?简单说,Ant有以下这两个优点。
  • 使用java开发,并用xml存储build信息,因此是跨平台的。
  • 程序员可以自己扩展Ant。程序员可以自己写java程序来扩展Ant,创建自己的tasks。

    make这一类的工具是基于操作系统shell的,因此移植性不好。并且Ant也可以通过<exec>标签来实现调用shell,但这样会是以可移植性为代价的。          Ant使用XML来存储build信息,在xml文件里有很多task的定义,默认使用的文件是build.xml。下图为Ant build文件的一般结构示意图:

FirstBuild.xml

    通过实例来说明Ant的build.xml文件的结构会更清晰一些,这里使用的build文件是FirstBuild.xml,它实现了创建一个文件夹并拷贝一个文件进入这个文件夹。 首先,要有<project>元素:   <project>中的name属性标识工程名,basedir指示根目录,default标识默认执行的target。如果运行ant时不指定这些属性,Ant将执行这个target。 下一步,定义这个工程所使用的properties:   这里定义了两个全局属性,分别是dir.name和file.name。这些属性是可选的,但使用属性会更方便,尤其是便于维护。一种更有效的方式是将这些属性放到一个专门文件里,从而使这个xml文件更加灵活,易于重用。 因为这个build文件很简单,所以没有task和path的定义。 最后,定义所要执行的targets。   注意copyfile中的depends,denpends属性意味着在执行copyfile之前,makedirectorytarget一定要先执行。 Ant的语法结构一般是:   如果没有使用-fuildfile参数,那么Ant将默认使用build.xml,如果没有build.xml,那么Ant将报错,如下:   因为我们的build文件名不是build.xml,因此需要添加-buildfile这个参数。下面是使用-buildfile参数的结果:   在文件中定义的property可以被Ant的参数所覆盖,如下面使用yourdir取代mydir:   一般在build.xml中都会有clean这个target,其作用有些像卸载软件程序:  

使用Ant创建web应用程序

    前面的那个Ant任务比较简单,下面介绍一个有些复杂又十分常用的Ant文件:我们要用Ant来构建一个web应用程序。web应用程序一般的目录结构是这样的:
src放置java文件,web放jsp等页面文件和配置文件,dist用来存放生成的war文件,build用来放编译好的servlet,lib用来放库文,doc用来放生成的javadoc,以及最主要的,build.xml。其中,build,dist和doc是使用Ant脚本来生成的。

build.xml

build.xml的第一部分:   这一部分没什么好说的,前面都说了。 下一部分还是全局可用的properties。   clean target,用于删除build和dist目录及其所有子目录。   init target用于完成初始化工作,包括创建目录结构,初始化Java CLASSPATH。CLASSPATH中包含这个web应用程序使用的所有库文件。下面的代码将servlet-api.jar包进来。   compile target将编译src目录中所有的java文件,生成的class文件将被存放到destdir属性所指的目录中,compile必需是在init完成之后才能执行。如果使用compile命令,则将自动先执行init。   dist target将创建一个war文件。   javadoc target将为源码创建javadoc文档。   all target将上面这些任务按在depends中的顺序组织起来。  

使用Ant管理web应用程序

继续上面的那个build.xml文件,在其中添加下面的这些代码,就可以通过Ant管理这个web应用程序了。  

相关内容

    暂无相关文章