Gradle介紹

weixin_34402408發表於2018-03-29

簡介

Gradle是一種依賴管理工具,基於Groovy語言,面向Java應用為主,它拋棄了基於XML的各種繁瑣配置,取而代之的是一種基於Groovy的內部領域特定(DSL)語言。

下載:Mac上會預設下載到 /Users/<使用者名稱>/.gradle/wrapper/dists 目錄

           Win平臺會預設下載到 C:\Documents and Settings\<使用者名稱>.gradle\wrapper\dists 目錄


在Java構建技術世界裡具有巨大突破性的構建工具

1.一個像Ant一樣靈活且通用的構建工具;

2.一種可切換的,像Maven一樣的基於約定的構建框架,卻又從不約束你(約定優於配置);

3.對多專案構建的強力支援;

4.對依賴管理的強力支援(基於Apache Ivy);

5.對已有的Maven和Ivy倉庫有著全面的支援;

6.支援可傳遞性的依賴管理,而不需要遠端倉庫或者pom.xml和ivy.xml配置檔案;

7.Gradle能夠很好地支援Ant任務和構建 ;

8.支援用Groovy語言編寫Gradle的指令碼;

9.擁有豐富的領域模型來構建你的指令碼;


gradle編譯過程

./ 代表當前目錄 

gradlew代表gradle wrapper,表示gradle的一層包裝

1.  ./gradlew -v 檢視專案Gradle版本號(第一次執行會下載eg:gradle-4.4-all)

2.  ./gradlew clean  清除build資料夾(會下載gradle的一些依賴?)

3.  ./gradlew build   檢查依賴並編譯打包(會打包debug和release)

app/build/outputs/apk 目錄下app-debug-unaligned.apk(未zip優化), app-release-unsigned.apk(未簽名)


打包

./gradlew assembleDebug 編譯並打Debug包 

./gradlew assembleRelease 編譯並打Release的包

./gradlew installRelease Release模式打包並安裝

./gradlew uninstallRelease 解除安裝Release模式包


gradle程式設計

核心:project和task

gradle外掛:本質是寫好的一些task(基於約定)