<project>标签
每个构建文件对应一个项目。<project>标签时构建文件的根标签。它可以有多个内在属性,就如代码中所示,其各个属性的含义分别如下。
(1) default :表示默认的运行目标,这个属性是必须的。
(2) basedir :表示项目的基准目录。
(3) name表 :示项目名。
(4) description :表示项目的描述。
<target>标签
一个项目标签下可以有一个或多个target标签。一个target标签可以依赖其他的target标签。例如,有一个target用于编译程序,另一个target用于声称可执行文件。在生成可执行文件之前必须先编译该文件,因策可执行文件的target依赖于编译程序的target。Target的所有属性如下。
(1).name :表示标明,这个属性是必须的。
(2).depends :表示依赖的目标。
(3) if :表示仅当属性设置时才执行。
(4)unless :表示当属性没有设置时才执行。
(5)description :表示项目的描述。
Ant的depends属性指定了target的执行顺序。Ant会依照depends属性中target出现顺序依次执行每个target。在执行之前,首先需要执行它所依赖的target。程序中的名为run的target的depends属性compile,而名为compile的target的depends属性是prepare,所以这几个target执行的顺序是 prepare->compile->run。一个target只能被执行一次,即使有多个target依赖于它。如果没有if或unless属性,target总会被执行。
<mkdir>标签
该标签用于创建一个目录,它有一个属性dir用来指定所创建的目录名,其代码如下:
<mkdir dir=”${class.root}”/>
通过以上代码就创建了一个目录,这个目录已经被前面的property标签所指定。
<jar>标签
该标签用来生成一个JAR文件,其属性如下。
(1) destfile : 表示JAR文件名。
(2) basedir :表示被归档的文件名。
(3) includes :表示别归档的文件模式。
(4) exchudes :表示被排除的文件模式。
<javac标签>
该标签用于编译一个或一组java文件,其属性如下。
(1).srcdir :表示源程序的目录。
(2).destdir :表示class文件的输出目录。
(3).include :表示被编译的文件的模式。
(4).excludes :表示被排除的文件的模式。
(5).classpath :表示所使用的类路径。
(6).debug :表示包含的调试信息。
(7).optimize :表示是否使用优化。
(8).verbose :表示提供详细的输出信息。
(9).fileonerror :表示当碰到错误就自动停止。
<java>标签
该标签用来执行编译生成的.class文件,其属性如下。
(1).classname :表示将执行的类名。
(2).jar :表示包含该类的JAR文件名。
(3).classpath :所表示用到的类路径。
(4).fork :表示在一个新的虚拟机中运行该类。
(5).failonerror:表示当出现错误时自动停止。
(6).output : 表示输出文件。
(7).append :表示追加或者覆盖默认文件。
<delete>标签
该标签用于删除一个文件或一组文件,去属性如下。
(1)/file :表示要删除的文件。
(2).dir :表示要删除的目录。
(3).includeEmptyDirs : 表示指定是否要删除空目录,默认值是删除。
(4).failonerror :表示指定当碰到错误是否停止,默认值是自动停止。
(5).verbose :表示指定是否列出所删除的文件,默认值为不列出。
<copy>标签
该标签用于文件或文件集的拷贝,其属性如下。
(1).file :表示源文件。
(2).tofile : 表示目标文件。
(3).todir :表示目标目录。
(4).overwrite :表示指定是否覆盖目标文件,默认值是不覆盖。
(5).includeEmptyDirs :表示制定是否拷贝空目录,默认值为拷贝。
(6).failonerror : 表示指定如目标没有发现是否自动停止,默认值是停止。
(7).verbose :表示制定是否显示详细信息,默认值不显示。
每一个target只能执行一次,即使是多个target依赖他,也只能执行一次