Gradle笔记系列(一)
1、Gradle概述
Gradle是一個基于Apache Ant和Apache Maven概念的項目自動化構建工具。它使用一種基于Groovy的特定領域語言(DSL)來聲明項目設置,拋棄了基于XML的各種繁瑣配置。
2、Gradle特性
2.1?基于聲明和約定的構建
Gradle的核心在于基于Groovy豐富而又可擴展的特定領域描述語言(DSL)。Groovy通過聲明性的語言元素將基于聲明的構建推向下層,你可以按你想要的方式進行組合。這些元素同樣也為支持Java、Groovy、OSGi、Web和Scala項目提供了基于約定的構建。并且,這種聲明性的語言是可擴展的。你可以添加新的或增強現有的語言元素。因此,它提供了簡明、可維護和易理解的構建。
2.2?基于編程的語言依賴
聲明性語言優點在于通用任務圖,你可以充分將其應用在構建中。它提供了最大限度的靈活性,以讓Gradle適應你的特殊需求。
2.3?構建結構化
Gradle的靈活和豐富性最終能夠支持在你的構建中應用通用的設計模式。 例如,它可以很容易地將你的構建拆分為多個可重用的模塊,最后再進行組裝,但不要強制地進行模塊的拆分。 不要把原本在一起的東西強行分開(比如在你的項目結構里),從而避免讓你的構建變成一場噩夢。 最后,你可以創建一個結構良好,易于維護,易于理解的構建。
2.4?深度API
Gradle允許你在構建執行的整個生命周期,對它的核心配置及執行行為進行監視并自定義。
2.5?Gradle的可擴展性
Gradle有非常良好的擴展性。 從簡單的單項目構建,到龐大的多項目構建,它都能顯著地提升你的效率。 這才是真正的結構化構建。通過最先進的增量構建功能,它可以解決許多大型企業所面臨的性能瓶頸問題。
2.6?多項目構建
Gradle對多項目構建的支持非常出色。項目依賴是首先需要考慮的問題。 我們允許你在多項目構建當中對項目依賴關系進行建模,因為它們才是你真正的問題域。 Gradle遵守你的布局。
2.7?多種方式管理依賴
不同的團隊喜歡用不同的方式來管理他們的外部依賴。 從Maven和Ivy的遠程倉庫的傳遞依賴管理,到本地文件系統的jar包或目錄,Gradle對所有的管理策略都提供了方便的支持。
2.8?Gradle是第一個構建集成工具
Ant tasks是最重要的。而更有趣的是,Ant projects也是最重要的。 Gradle對任意的Ant項目提供了深度導入,并在運行時將Ant 目標(target)轉換為原生的Gradle 任務(task)。 你可以從Gradle上依賴它們(Ant targets),增強它們,甚至在你的build.xml上定義對Gradle tasks的依賴。Gradle為屬性、路徑等等提供了同樣的整合。
2.9?易于移植
Gradle能適應你已有的任何結構。因此,你總可以在你構建項目的同一個分支當中開發你的Gradle構建腳本,并且它們能夠并行進行。 我們通常建議編寫測試,以保證生成的文件是一樣的。 這種移植方式會盡可能的可靠和減少破壞性。這也是重構的最佳做法。
2.10?Groovy
Gradle的構建腳本是采用Groovy寫的,而不是用XML。 但與其他方法不同,它并不只是展示了由一種動態語言編寫的原始腳本的強大。 那樣將導致維護構建變得很困難。 Gradle的整體設計是面向被作為一門語言,而不是一個僵化的框架。 并且Groovy是我們允許你通過抽象的Gradle描述你個人的story的黏合劑。 Gradle提供了一些標準通用的story。這是我們相比其他聲明性構建系統的主要特點。 我們的Groovy支持也不是簡單的糖衣層,整個Gradle的API都是完全groovy化的。只有通過Groovy才能去運用它并對它提高效率。
2.11?The Gradle wrapper
Gradle Wrapper允許你在沒有安裝Gradle的機器上執行Gradle構建。 這一點是非常有用的。比如,對一些持續集成服務來說。 它對一個開源項目保持低門檻構建也是非常有用的。 Wrapper對企業來說也很有用,它使得對客戶端計算機零配置。 它強制使用指定的版本,以減少兼容支持問題。
2.12?自由和開源
Gradle是一個開源項目,并遵循ASL許可。
3、Gradle安裝
目前Gradle的最新版本是2.14,可以在Gradle官網下載:https://gradle.org/gradle-download/,Gradle的其它版本可以在http://services.gradle.org/distributions下載。這里我使用的是2.10版本(gradle-2.10-all.zip),下載后加壓,設置環境變量GRADLE_HOME,添加GRADLE_HOME/bin到Path環境變量即可。在命令行執行gradle -v命令回車,出現下面結果說明Gradle安裝成功。?
------------------------------------------------------------
Gradle 2.10
------------------------------------------------------------
?
Build time: 2015-12-21 21:15:04 UTC
Build number: none
Revision: 276bdcded730f53aa8c11b479986aafa58e124a6
?
Groovy: 2.4.4
Ant: Apache Ant(TM) version 1.9.3 compiled on December 23 2013
JVM: 1.8.0_92 (Oracle Corporation 25.92-b14)
OS: Windows 7 6.1 x86
參考:
http://gradledoc.qiniudn.com/1.12/userguide/overview.html#sec:special_feature_of_gradle
?
轉載于:https://www.cnblogs.com/e007/p/5600954.html
總結
以上是生活随笔為你收集整理的Gradle笔记系列(一)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: djangoORM数据类型及基本操作
- 下一篇: maven添加非官方jar包到本地库