???? Apache Ant 是一個基于 Java 的生成工具 (another neat tool). 使用 Ant ,您能夠編寫單個生成文件,這個生成文件在任何 Java 平臺上都一致地操作(因為 Ant 本身也是使用 Java 語言來實現的);這就是 Ant 最大的優勢。
??? Ant 沒有定義它自己的自定義語法;相反,它的生成文件是用 XML 編寫的 . 每個生成文件由單個 project 元素組成,該元素又包含一個或多個 target 元素。一個目標( target )是生成過程中已定義的一個步驟,它執行任意數量的操作,比如編譯一組源文件。一次生成過程所必需的所有操作可以放入單個 target 元素中,但是那樣會降低靈活性。將那些操作劃分為邏輯生成步驟,每個步驟包含在它自己的 target 元素中,這樣通常更為可取。這樣可以執行整體生成過程的單獨部分,卻不一定要執行其他部分。例如,通過僅調用某些目標,您可以編譯項目的源代碼,卻不必創建可安裝的項目映像。
??? 頂級 project 元素需要包含一個 default 屬性,如果在 Ant 被調用時沒有指定目標,這個屬性將指定要執行的目標。然后需要使用 target 元素來定義該目標本身。下面是一個最基本的生成文件:






一次性打開和關閉一個元素也是可以做到的。因此,與其像上面那樣 target 元素使用單獨的起始和結束標簽,我們可以將它寫為如下形式: ???????

當元素沒有包含任何內容時,更簡練的形式會更清晰。
看一個具體的例子:











Ant 中用于設置屬性的機制 : ??

為了在生成文件的其他部分引用這個屬性,使用以下語法 :
?????????????????????? ${metal}
為了使用這樣一個值,它是另一個屬性的值的組成部分,將標簽寫為下面這樣:



屬性經常用于引用文件系統上的文件或目錄,但是對于使用不同路徑分隔符(例如, / 與 \ )的平臺來說,這樣可能在跨越不同平臺時導致問題。 Ant 的 location 屬性專門設計用于以平臺無關的方式包含文件系統路徑。像下面這樣使用 location 來代替 value :

用于 location 屬性的路徑分隔字符將被轉換為當前平臺的正確格式;而且由于文件名是相對的,它被認為是相對于項目的基目錄。我們同樣可以容易地寫為下面這樣:
<
property?
name
="database-file"
?location
="archive\databases\${metal}.db"
/>
定義依賴關系:
使用
target
元素的
depends
屬性來實現






這種方法允許您執行項目任何階段的生成過程; Ant 會首先執行已定義的先決階段。在上面的例子中,如果讓 Ant 完成 compile 步驟,它將判斷出需要首先執行 init 和 preprocess 這兩個目標。 init 目標不依賴其他任何目標,因此它將首先被執行。然后 Ant 檢查 preprocesstarget ,發現它依賴 init 目標;由于已經執行了后者, Ant 不會再次執行它,因而開始執行 preprocess 目標。最后可以執行 compile 任務本身。注意目標出現在生成文件中的順序并不重要:執行順序是由 depends 屬性唯一確定的。
Ant 在 Eclipse 中—— Ant 編輯器
???? <?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" /><shapetype id="_x0000_t75" stroked="f" filled="f" path="m@4@5l@4@11@9@11@9@5xe" o:preferrelative="t" o:spt="75" coordsize="21600,21600">?<img height="235" hspace="0" src="/images/cnblogs_com/jeffchen/EclipseAntEditor.jpg" width="600"></shapetype>
名為 build.xml 的文件在 Eclipse 的導航程序視圖中使用一個 Ant 圖標來標識和裝飾。右鍵單擊這些文件會提供一個 Run Ant... 菜單選項,選擇這個菜單選項將打開一個類似如下的對話框:
<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
?
來自該生成文件的所有目標都顯示出來了,而默認的目標則處于選中狀態。在您決定是否要改變默認目標之后,請按 Run 按鈕來運行 Ant 。 Eclipse 將切換到 Console 視圖,如下圖所示。錯誤將以不同的顏色顯示出來,可以單擊輸出中的任務名稱來跳到生成文件中的對應調用點。
?
默認情況下, Eclipse 僅對名為 build.xml 的文件使用 Ant 編輯器,不過可以容易地配置該編輯器,使其識別具有其他名稱的文件。從菜單上選擇 Window=>Preferences ,然后展開 Workbench 組,再選擇 File Associations 參數設置頁面。然后為預期的文件名添加一種新的文件類型。例如,可以為名為 mybuild.xml 的所有文件添加一種新的文件類型。如果想對具有 .xml 后綴的所有文件(特殊文件名除外,比如 plugin.xml ,它在 Eclipse 中覆蓋通配符指定)做同樣的事情,您甚至可以使用 *.xml 。 最后為這種新的文件類型添加一個關聯的編輯器,然后從編輯器列表上選擇 Ant editor ,如下所示:
?
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
