ANT

1. Ant是一种基于Java的编译打包工具,目前最新版本为:Ant 1.8.1,官方下载地址为:http://ant.apache.org/bindownload.cgi。

2. Ant是Apache软件基金会JAKARTA目录中的一个子项目,它有以下的优点:
跨平台性,Ant是纯Java语言编写的,所示具有很好的跨平台性;
操作简单,Ant是由一个内置任务和可选任务组成的。Ant运行时需要一个XML文件(默认为build.xml);
Ant通过调用target树执行各种task,每个task实现了特定接口对象。由于Ant构建文件时XML格式的文件,易维护,结构清晰;
Ant可以集成到开发环境中,由于Ant的跨平台性和操作简单的特点,它很容易集成到一些开发环境中去。

3. Ant配置文件为build.xml,通过调用target树执行各种task,每个task由实现了一个实现了特定Task接口的对象来运行,以下为实例:
<?xml version="1.0"?>
<project name="NES" default="doc">
    <property name="NES.home" value="." />
    <!-- 源jsp文件地址 -->
    <property name="jsp.dir" value="${NES.home}/WebRoot" />
    <!-- 源java文件地址 -->
    <property name="java.dir" value="${NES.home}/src" />
    <!-- 最终发布文件地址 -->
    <property name="dist.dir" value="${NES.home}/dist" />
    <!-- 最终class文件地址 -->
    <property name="classes.dir" value="${NES.home}/dist/WEB-INF/classes" />
    <!-- 最终jar文件地址 -->
    <property name="jar.dir" value="${NES.home}/jar" />

    <property name="lib.dir" value="lib" />
    <property name="dist.dir" value="dist" />
    <property name="doc.dir" value="doc"/>

    <!-- 定义classpath -->
    <path id="master-classpath">
        <fileset file="${NES.home}/WebRoot/WEB-INF/lib/*.jar" />
        <pathelement path="${classes.dir}"/>
    </path>

    <!-- 初始化 -->
    <target name="init">
        <delete dir="${jar.dir}"/>
        <delete dir="${dist.dir}"/>
        <mkdir dir="${jar.dir}" />
        <mkdir dir="${dist.dir}" />
        <mkdir dir="${classes.dir}" />
    </target>
    <!-- 编译 -->
    <target name="compile" depends="init" description="compile the source files">
        <javac srcdir="${java.dir}" destdir="${classes.dir}" target="1.6" includeantruntime="on" >
            <compilerarg line="-encoding UTF-8" />
            <classpath refid="master-classpath" />
        </javac>
    </target>
    <!-- 测试 -->
    <target name="test" depends="compile" description="run junit test">
    </target>
    <!-- 打包 -->
    <target name="pack" depends="test" description="make .jar file">
        <copy todir="${dist.dir}/WEB-INF/classes" preservelastmodified="true">
            <fileset dir="${java.dir}" >
                <include name="**/**"/>
                <include name="**.**"/>
                <exclude name="com/**"/>
            </fileset>
        </copy>
        <copy todir="${dist.dir}" preservelastmodified="true">
            <fileset dir="${jsp.dir}" >
                <include name="**/**"/>
                <include name="**.**"/>
                <exclude name="classes/**"/>
            </fileset>
        </copy>
        <jar destfile="${jar.dir}/nes.jar" basedir="${dist.dir}" />
    </target>
    <!-- 文档 -->
    <target name="doc" depends="pack" description="create api doc">
    </target>
</project>




你可能感兴趣的:(apache,xml,jsp,ant,软件测试)