<?xml version="1.0" encoding="UTF-8"?> <!-- 在Ant腳本中,project是這個XML文檔的根結點 ,project有如下幾個屬性:--> <!-- name:指明構建任務的名稱,通常狀況下選擇要構建的項目名稱便可 --> <!-- default:一個項目能夠定義多個target。target就是Ant要執行的動做,在執行Ant時能夠選擇執行哪一個target。 當沒有選擇執行哪一個target時,使用project的default屬性指定的target。在調用 Ant腳本時,能夠指定要運行的target, 在沒有指定target時,就要使用default指定的target,在這裏default屬性是必須指定的。--> <!-- basedir:Ant腳本工做的根路徑,在通常狀況下,咱們會把Ant腳本放在構建項目的根目錄下,這種狀況下的basedir屬性的值就能夠是".",即把當前目錄做爲Ant腳本工做的根目錄。 --> <project name="HelloWorld" default="run" basedir="."> <!-- property用於描述Ant腳本中的屬性和Ant腳本這外的properties屬性文件。 property至關於定義了一個變量, 這個變量在整個Ant腳本中能夠使用。 如:--> <target name="prop"> <!-- Ant腳本定義的工做根目錄 --> <echo message="${basedir}" /> <!-- Ant版本 --> <echo message="${ant.version}" /> <!-- Ant腳本文件 --> <echo message="${ant.file}" /> <!-- Ant腳本定義的工做名稱 --> <echo message="${ant.project.name}" /> <!-- Ant使用的JDK版本 --> <echo message="${ant.java.version}" /> <!-- 操做系統 --> <echo message="${os.name}" /> <!-- 把全部的環境變量取出放在env中 ,在後面的程序中能夠使用${env.變量名稱}來取出--> <property environment="env" /> <echo message="${env.JAVA_HOME}" /> <echo message="${env.TOMCAT_HOME}" /> </target> <property name="src" value="src"/> <property name="dest" value="build/classes" /> <property name="lib" value="build/lib" /> <property name="hello_jar" value="build/lib/hello.jar" /> <!-- 在Ant腳本中把想要作的事情用target描述,每一個target描述一件事情,target有如下幾個屬性: --> <!-- name:target名稱,name屬性是必須指定的 --> <!-- depends:指明各個target之間的依賴關係,一個target可能依賴於其它的target。若是一個target依賴於多個其餘的target,只須要在depends中用逗號隔開便可。 depends屬性是可選的,不是必須指定的。 --> <!-- if:指定target所需設定的屬性名。 --> <!-- unless:指定target所需清除的屬性名 --> <!-- description:簡單描述target功能。這些描述可由-projecthelp命令在DOS命令行中輸出 --> <target name="init"> <mkdir dir="${dest}" /> <mkdir dir="${lib}" /> </target> <target name="complie" depends="init"> <javac srcdir="${src}" destdir="${dest}" /> </target> <target name="build" depends="complie"> <jar destfile="${hello_jar}" basedir="${dest}" > <manifest> <attribute name="Main-Class" value="HelloWorld" /> </manifest> </jar> </target> <target name="run" depends="build"> <java classname="com.helloworld.HelloWorld" classpath="${hello_jar}" /> <echo message="${hello_jar}" /> </target> <target name="clean"> <delete file="${hello_jar}" /> <delete dir="${dest}" /> <delete dir="${lib}" /> </target> </project>