用Ant构建脚本(3)

    技术2022-05-11  92

     用Ant构建脚本(3)

    三、Ant的数据元素和数据类型Ant的数据类型定义包括三个级别:project-level、target-level和task-level。这里代表了其在Ant中的可视性,如直接定义在project下的project-level,所有的target和task都可以引用它们。数据元素分为两个部分:1)特性property;2)数据类型DataType。Ant的DataType用于表示一套复杂的数据集,数据类型的定义通常和target平级,即数据类型一般直接在<project>夏衣层定义,当然也有一些直接定义在task中。Ant的数据类型如下:(1)环境变量environment:传递到buildfile的环境变量;(2)参数argument:从命令行传递到buildfile的参数;(3)文件列表filelist:文件不一定存在;(4)文件集fileset:文件必须存在;(5)模式集patternset;(6)过滤集filterset;(7)路径path;(8)映射mapper:定义了输入与输出文件之间的一套复杂的关系。

    四、Ant的核心任务与自定义任务1、Ant的核心任务:指的是Ant内置的任务,不需要使用第三方包就可以直接使用的任务。Ant还支持一些可选task,一个可选task一般需要额外的库才能工作。2、<copy>将文件或者文件集复制到一个新的文件或者目录,必须指定其todir的属性值。<copy>支持的常用属性如下:(1)file:要复制的文件;(2)tofile:复制到新的文件的文件名;(3)todir:复制到新的目录的目录名;(4)overwrite:是否覆盖目标文件,默认值为false,即只有当被复制的文件比目标文件新时才复制;如要强制覆盖目标文件,需要将overwrite设置为true。3、<delete>删除单个或多个文件、单个或多个目录。通常在清除build产生的临时文件和临时目录时会用到<delete>,一般build文件中都会有一个名教clean的target。<delete>支持的常用属性如下:(1)file:指定要删除的文件;(2)dir:指定要删除的目录;(3)includeemptydirs:当使用文件集fileset时,是否删除空的文件夹,默认为false。4、<mkdir>创建目录,并且非空的父目录也会被创建。其最常见的属性是dir:指定要创建的目录,该属性不能省略。5、<javac>编译器的选择,默认为JDK。6、<java>执行java程序;7、<jar>将一些文件集打包成JAR的格式。8、Ant自定义任务(1)编写<taskdef>标签,在能够调用自定义的任务之前,需要给它指定一个名称来定义它,并告诉Ant关于实现这个任务的类文件的信息,以及定位该类文件所必须的任何classpath设置。这是使用taskdef任务来完成的。如下:<taskdef name="filesorter" classname="FileSorter" classpath="classes"/>(2)然后就可以象使用Ant核心任务一样使用这个自定义的任务了。


    最新回复(0)