Gradle學習筆記

Gradle是什麼?

Gradle類似於Ant,Maven,是一種建構工具,提供我們自動化編譯、打包、單元測試、集成測試、專案部署等功能; 有比Maven更高的靈活性(Maven本身要做到客製化的建構極不容易),也有比Ant更高度的標準化的建構方式(Ant的建構並沒有一個可參考的準則)

優點

  • 具有表達性、可維護性,基於Groovy的領域特定語言(DSL)
  • 標準化的專案布局和生命週期,又具有高度靈活性和對預設值的可配置姓
  • 支持建構由多個專案組成的專案結構
  • 支持依賴管理
  • 有高度相容性,能夠引入Ant的建構腳本或將Maven邏輯轉換成自身規則集的工具
  • 高度可擴展性及高效率的建構工具

建構的生命週期任務

如下圖,Gradle已經提供了默認的任務,以標準的目錄架構,知道執行任務時甚麼資源該去哪個目錄找尋,並且可以通過約定屬性來改變默認值; 如約定屬性 sourceSets,可以用來改變要執行compileJava任務時,要去哪裡取得Java原始碼。
gradleLiveCycle