gradle是Android開發中引入的全新的構建系統,因為全新的構建系統主要是出於下面的目的:
1. 方便複用程式碼和資源
2. 構建多種版本的apk更見簡單,不論是為多渠道構建不同的apk還是構建不同環境的apk(debug,release)
3. 方便配置,擴充套件,自定義構建過程
4. 良好的IDE整合
為什麼選擇Gradle?
Gradle主要有以下幾個有點:
1. 使用領域驅動語言(DSL)來描述構建邏輯
2. 構建指令碼使用Groovy,可以方便的定製構建邏輯
3. 內建的依賴管理系統,使用Maven或者Ivy
4. 非常靈活。可以使用最佳實踐但並不強制
5. 良好的IDE支援
Gradle專案使用專案根目錄下的build.gradle檔案來配置
一個最簡單的Java專案的build.gradle如下
1 |
apply plugin: 'java' |
這表示改專案會使用Gradle的java外掛,該外掛是Gradle預設提供的,java外掛提供了構建java應用和執行測試的功能。
最簡單的Android專案build.gralde
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
buildscript { repositories { mavenCentral() } dependencies { classpath 'com.android.tools.build:gradle:0.11.1' } } apply plugin: 'android' android { compileSdkVersion 19 buildToolsVersion "19.0.0" } |
該Android構建檔案包含3個部分:
buildscript { … } 配置驅動構建過程的程式碼,意思就是buildscript中的配置僅僅在構建過程中起作用,也就是構建程式所使用的配置。
上面的程式碼中就宣告瞭我們的構建程式會使用Maven中央倉庫,並且有一個classpath依賴是指向一個Maven庫的。這個Maven庫就是Android Gradle外掛,版本號是0.11.1。
隨後就是使用這個Android外掛,和之前使用Java外掛一樣。
最後,android { … }配置了Android專案構建時需要的所有引數。
預設情況下,只需要指定compileSdkVersion和buildtoolsVersion,compileSdkVersion指定使用哪個版本的sdk編譯,buildToolsVersion指定使用哪個版本的構建工具。
注意點:
1. 只需要使用android外掛,再使用Java外掛會報錯.
2. 在local.properties中使用sdk.dir屬性指定SDK路徑,或者你可以使用ANDROID_HOME環境變數。
下一篇,我將會介紹Android Gradle專案的專案結構。