跳轉到內容

Apache Ant/背景

來自 Wikibooks,開放世界中的開放書籍

什麼是 Apache Ant?

[編輯 | 編輯原始碼]
  • 一種與作業系統和語言無關的基於 XML 的“構建工具”
  • 一種指令碼語言,用於執行任何可以在命令列介面中執行的複雜檔案系統程序
  • A.N.T. – Another Neat Tool (另一個簡潔的工具)
  • 用於構建專案

Ant 的歷史

[編輯 | 編輯原始碼]
  • 由 James Duncan Davidson 構建
  • 對 UNIX 的 “make” 感到沮喪
  • 在將 Sun 的產品轉換為開源軟體時發明
  • Make 使用“tab”作為記錄分隔符
  • 在複製/貼上操作中,製表符經常被轉換為空格

為什麼 Ant 具有戰略意義?

[編輯 | 編輯原始碼]

Ant 非常重要,因為它可以幫助組織建立可重複的構建流程。

可重複性對於組織達到 CMU 能力成熟度模型的下一級至關重要。 

  1. 初始
  2. 可重複的
  3. 已定義的
  4. 已管理的
  5. 已最佳化的

Ant 可以幫助你從初始級別提升到可重複級別。

Ant 是一種流程紀律

[編輯 | 編輯原始碼]
  • 流程紀律有助於確保在壓力時期保留現有實踐
  • 當這些實踐到位時,專案將按照其已記錄的計劃進行執行和管理
  • 回答問題:之前的開發人員如何編譯、測試和安裝他們的系統?
  • 對於軟體考古學家來說,這是一個極好的輔助工具

軟體專案生命週期

[編輯 | 編輯原始碼]
  • 軟體包的版本 1 和版本 2 通常由不同的組完成
  • 有時版本 1 和版本 2 由不同國家/地區的不同團隊相隔數年完成
  • 承包商和內部員工需要使用相同的工具
  • 共享開發流程(如開源社群中使用的流程)如果沒有像 Ant 這樣的工具幾乎是不可能的

Ant 與作業系統和語言無關

[編輯 | 編輯原始碼]
  • 構建在 Windows 和 UNIX/Linux 系統上執行
  • 應該在任何執行 Java VM 的地方執行
  • Ant 檔案“知道”檔案分隔符“/”與“\”
  • 構建目標仍然可以執行特定於作業系統的任務
  • 與任何可以從命令列執行的操作一起使用
  • 易於擴充套件(使用 Java)
  • 可以使用其他語言進行擴充套件,只要它們具有 Java 繫結,但在實踐中,大多數人使用 Java 來擴充套件 Ant
  • 如果你熟悉 XML(甚至 HTML),你可能會很快學會使用 Ant
  • 如果你還不熟悉 XML,你需要學習一些 XML 才能使用 Ant
  • 最好的學習方法之一是閱讀許多小型 Ant 示例任務
  • 本書將幫助你做到這一點

下一章

[編輯 | 編輯原始碼]

採用

華夏公益教科書