apache ant内置任务

标签:

本文出自jvm123.com-java技术分享站:http://jvm123.com/2019/09/apache-ant-nei-zhi.html

apache ant内置任务一般在build.xml中以xml标签的形式使用,例如:

<target name="build" description="打包" depends="compile">
    <delete dir="${output}" />
    <mkdir dir="${output}" />
    <jar destfile="${output}/app.jar" basedir="${classes}" includes="**/*.class">
        <manifest>
            <attribute name="Main-Class" value="Program"/>
            <attribute name="Class-Path" value="${classes}"/>
            <attribute name="classpath" value="${classes}"/>
        </manifest>
    </jar>
</target>

以上代码中,在target标签下,使用了内置任务:delete、mkdir、jar 三个内置任务。以下对常用的 ant内置任务令进行介绍:

mkdir – (ant内置任务)

用于创建一个目录,它有一个属性dir用来指定所创建的目录名,其属性如下:

(1) dir:要创建的目录。可以是绝对路径,还是可以是相对于project的basedir的相对路径。

其代码如下:<mkdir dir=”${class.root}”/>

jar – (ant内置任务)

用来生成一个JAR文件,其属性如下:

(1) destfile表示JAR文件名。

(2) basedir表示被归档的文件名。

(3) includes表示被归档的文件模式。

(4) excludes表示被排除的文件模式。

javac – (ant内置任务)

用于编译一个或一组java文件,其属性如下 :

(1).srcdir表示源程序的目录。

(2).destdir表示class文件的输出目录。

(3).include表示被编译的文件的模式。

(4).excludes表示被排除的文件的模式。

(5).classpath表示所使用的类路径。

(6).debug表示包含的调试信息。

(7).optimize表示是否使用优化。

(8).verbose 表示提供详细的输出信息。

(9).fileonerror表示当碰到错误就自动停止。

java – (ant内置任务)

用来执行编译生成的.class文件,其属性如下 :

(1).classname 表示将执行的类名。

(2).jar表示包含该类的JAR文件名。

(3).classpath所表示用到的类路径。

(4).fork表示在一个新的虚拟机中运行该类。

(5).failonerror表示当出现错误时自动停止。

(6).output 表示输出文件。

(7).append表示追加或者覆盖默认文件。

delete – (ant内置任务)

用于删除一个文件或一组文件,其属性如下 :

(1).file表示要删除的文件。

(2).dir表示要删除的目录。

(3).includeEmptyDirs 表示指定是否要删除空目录,默认值是删除。

(4).failonerror 表示指定当碰到错误是否停止,默认值是自动停止。

(5).verbose表示指定是否列出所删除的文件,默认值为不列出。

copy – (ant内置任务)

用于文件或文件集的拷贝,其属性如下:

(1).file 表示源文件。

(2).tofile 表示目标文件。

(3).todir 表示目标目录。

(4).overwrite 表示指定是否覆盖目标文件,默认值是不覆盖。

(5).includeEmptyDirs 表示指定是否拷贝空目录,默认值为拷贝。

(6).failonerror 表示指定如目标没有发现是否自动停止,默认值是停止。

(7).verbose 表示制定是否显示详细信息,默认值不显示。

exec – (ant内置任务)

执行文件,示例如下:

<exec executable=”${base.dir}/email.bat” ></exec>

发表评论