1. 程式人生 > >Gradle Wrapper

Gradle Wrapper

and .cn 生成 需要 AR ima 根目錄 構建 配置

簡介

Gradle Wrapper就是對Gradle的一層封裝,一個項目可以使用指定的gradle版本進行構建而不受當前機器安裝的gradle版本影響,便於一臺機器的多個項目使用不同的gradle版本進行構建而互不影響。當執行gradlew命令的時候,wrapper會檢查緩存判斷當前機器是否已經安裝了對應版本的gradle,如果安裝了那麽gradlew就會委托gradle執行用戶輸入的命令,如果還未安裝的話,那麽首先會自動幫我們從配置的下載地址下載。因此使用gradle的正確姿勢是使用gradlew而不是gradle命令,因內網無法連接到外網去下載指定的gradle版本,我們需要手動將對應的gradle版本放在緩存目錄。

Windows命令: gradlew xxx

Linux命令: ./gradlew xxx

技術分享圖片

Wrapper的配置文件是gradle\wrapper\gradle-wrapper.properties

技術分享圖片

如上圖所示則執行gradlew命令時指定使用gradle 4.4版本構建項目

PS:每一個Android Studio項目都有gradle wrapper,可以在項目根目錄下查看

緩存

Gradle的默認緩存目錄為~/.gradle,即用戶主目錄下的.gradle目錄,如不設置環境變量GRADLE_USER_HOME,wrapper對應的緩存目錄為~/.gradle/wrapper/dists,如設置環境變量GRADLE_USER_HOME,則wrapper對應的緩存目錄為$GRADLE_USER_HOME/wrapper/dists

配置

此處以gradle-4.4-all.zip為例

1.將gradle-4.4-all.zip放入以下目錄:

~/.gradle\wrapper\dists\gradle-4.4-all\9br9xq1tocpiv8o6njlyu5op1,路徑中的任何目錄如gradle-4.4-all不存在創建即可,其中9br9xq1tocpiv8o6njlyu5op1為按照一定規則生成的字符串,可參考Gradle緩存目錄文件命名規則

2.解壓gradle-4.4-all.zip到當前目錄

unzip gradle-4.4-all.zip(Linux)

3.建立空文件gradle-4.4-all.zip.lck和gradle-4.4-all.zip.ok

touch gradle-4.4-all.zip.lck gradle-4.4-all.zip.ok(Linux)

最後的目錄結構如下:

技術分享圖片

驗證

創建一個目錄如test,然後執行gradle wrapper命令,然後修改配置文件gradle\wrapper\gradle-wrapper.properties中的distributionUrl,如修改後的文件如下:

技術分享圖片

此時在test目錄下執行gradlew –v,如顯示版本信息,則配置成功

技術分享圖片

Gradle Wrapper