在build.xml中有不少標籤須要瞭解,在這裏,我就簡單的說說,我第一ant例子中使用到的標籤。java
①<?xml version="1.0" encoding="utf-8"?> 這是xml的聲明,沒什麼好說的。其實,在build.xml中,這個聲明是能夠不要的。若是出現了什麼亂碼,就能夠考慮改變編碼格式。編程
②<project name="firstAntFile" default="run" basedir="."> 中的project是build.xml的根元素;name屬性表示的是project的名字,這名字是任意的,固然,通常都會取一個有意義的名字;default是表示build.xml默認執行的target(任務);basedir表示的project的基目錄路徑,"."表示的是當前路徑。ui
③<property name="firstAnt.jar" value="firstAnt.jar"/>設置屬性的名字和對應的值;特別注意:在ant中,屬性的值一旦設置,就不可改變!!!這是和其餘語言不一樣的地方。設置屬性的名字和值,只是方便下面的引用;就是用名字代替屬性的值。在較長屬性值中,發揮巨大的威力,方便編程。編碼
④ <target name="init"> ..... </target> target表示的是任務,簡單理解,就是可以完成必定功能的最小工做單位(在ant中)。spa
⑤<mkdir dir="${dest}"/> 顧名思義,就是建立文件夾,在ant中,要使用已定義的屬性要用"${屬性名}"這種方式來引用。這個語句的意思就是在project的基目錄下建立dest文件夾,再在dest文件夾中建立classes文件夾。xml
⑥<javac srcdir="${src}" destdir="${dest}"/> 就是編譯"${src}"即src下面的java文件,而且把編譯好的.class文件放到"${dest}"中去。utf-8
⑦<jar jarfile="${firstAnt.jar}" basedir="${dest}"/> 這個語句,就是要ant幫咱們打jar包的意思,jarfile表示達成jar包後,jar包的名字,"${firstAnt.jar}"表示引用先前定義好的變量名爲firstAnt.jar的值,basedir就是把"${dest}"中的class文件打包。get
⑧<java classname="com.kan.antfile.firstAntFile" classpath="${firstAnt.jar}"/>這個語句是運行java文件的意思。classname指代的是所要運行的.class文件,classpath和java中的classpath同樣(能夠參考我博客中javaSE部分關於classpath和path的區別)博客
⑨<delete dir="${dest}"/> 刪除文件夾it
⑩<ant target="clean"/> 運行名字爲clean的target。
我在這裏補充一點,在dos窗口裏面,能夠精確控制ant運行的target,好比說,在dos窗口中輸入:ant init;這樣ant只運行target名字爲init的部分,在這裏就是隻運行<mkdir dir="${dest}"/>。