本文講述
Gradle Wrapper
,默認您已經掌握了相關知識
簡介
Wrapper
是對Gradle
的一層包裝,便于在團隊開發過程中統一Gradle構建的版本。Wrapper
啟動Gradle
時會檢查Gradle
有沒有被下載關聯,若沒有就會從配置的地址下載并運行構建。
1. 生成Wrapper
Gradle
提供了內置的Wrapper task
幫助我們自動生成Wrapper
所需的目錄文件,在終端進入項目根目錄輸入命令gradle wrapper
:
gradle wrapper
?
Starting a Gradle Daemon, 1 incompatible and 1 stopped Daemons could not be reused, use --status for details
?
BUILD SUCCESSFUL in 8s
1 actionable task: 1 executed
生成的文件如下:
|____gradle
| |____wrapper
| | |____gradle-wrapper.jar //具體業務邏輯
| | |____gradle-wrapper.properties //配置文件
|____gradlew //Linux 下可執行腳本
|____gradlew.bat //Windows 下可執行腳本
2. Wrapper
配置
終端執行gradle wrapper
生成相關文件時,可指定如下參數,控制wrapper
的生成:
Wrapper配置參數:
參數名 | 說明 |
---|---|
—gradle-version | 用于指定使用的Gradle版本 |
—gradle-distribution-url | 用于指定下載Gradle發行版的url地址 |
例如:
gradle wrapper --gradle-version 4.1
表示配置 wrapper
使用4.1版本Gradle
,文件gradle-wrapper.properties
中的distributionUrl
的規則是http\://services.gradle.org/distributions/gradle-${gradleVersion}-bin.sip
。若不設置,則會默認使用當前安裝的Gradle
版本。
3. gradle-wrapper.properties
該配置文件是gradle wrapper
的相關配置文件
gradle-wrapper.properties的配置字段:
字段名 | 說明 |
---|---|
distributionBase | 下載Gradle壓縮包解壓后存儲的主目錄 |
distributionPath | 相對于distributionBase的解壓后的Gradle的路徑 |
zipStoreBase | 類似distributionBase,但存放壓縮包 |
zipStorePath | 類似distributionPath,但存放壓縮包 |
distributionUrl | Gradle發行版壓縮包的下載地址 |
內容如下:
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-bin.zip
4. 自定義Wrapper task
前面提到gradle-wrapper.properties
是由Wrapper task
生成的,所以我們可以通過配置Wrapper task
來達到配置gradle-wrapper.properties
的目的。
可在build.gradle構建文件中錄入如下腳本:
task wrapper(type: Wrapper){
gradleVersion='2.8'
distributionBase='GRADLE_USER_HOME'
distributionPath='wrapper/dists'
zipStoreBase='GRADLE_USER_HOME'
zipStorePath='wrapper/dists'
distributionUrl=https\://services.gradle.org/distributions/gradle-2.8-all.zip
}
//每一項都可單獨設置,gradle-2.8-all.zip表示下載該版本Gradle的源碼
到這
Gradle Wrapper
就簡單介紹完了,后續我們再學習新的Gradle
知識,更多內容 XiMiMax -- http://www.ximimax.cn/ 歡迎持續關注