Android Studio在打開Android項目的時候,有時候Android項目使用的Gradle版本和本地存在的Gradle版本不一樣,Gradle同步的時候會去下載對應的gradle版本。由於Wall的存在或者電腦無法聯網有或者Gradle官方的服務器不穩定,通常會出現"failed to download Gradle"的報錯,導致無法編譯。這裏有以三個解決方案。
情況一 可以切換Gradle版本
在項目根路徑的build.gradle和gradle/wrapper/gradle-wrapper.properties文件中修改gradle的版本爲本地存在的版本。需要注意的是,由於Android Studio使用的Gradle 插件是對原始Gradle 的封裝,build.gradle文件顯示的版本爲android wrapper的版本,gradle-wrapper.properties文件中顯示的版本爲真正的gradle版本,兩者的版本號不相同,並有一定的映射關係,映射關係見https://developer.android.google.cn/studio/releases/gradle-plugin#updating-plugin
// build.gradle文件需要修改的地方
classpath 'com.android.tools.build:gradle:3.6.2'
// gradle/wrapper/gradle-wrapper.properties文件需要修改的地方
distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.4-all.zip
而本機存在的gradle版本可以在C:\Users\(用戶名)\.gradle\wrapper\dists中找到。
情況二 無法切換Gradle版本
由於Android gradle wrapper升級很快,版本之間又有些不兼容,使用不同的Gradle版本可能導致編譯不過,這時,就需要通過一些渠道下載到對於的gradle版本。爲了使Android Studio能夠在本地找build.gradle中聲明的版本進行編譯,有以下兩種方法。
方法一
將下載後的zip包放在以下路徑中,然後重啓Android Studio,Android Studio發現本地存在需要的gradle就不會去聯網下載了。
C:\Users\(用戶名)\.gradle\wrapper\dists\gradle-(Gradle版本號)-all\(一個特殊字符串)\
方法二
在Android Studio中點擊File->Settings->Build,Execution,Deployment,在Gradle Project中設置Use Gradle from爲gradle存放的路徑。設置完成後不需要重啓Android Studio,直接Sync。
常用的Gradle版本放在百度雲中
鏈接:https://pan.baidu.com/s/1a8C5_xZz9iFebro73UkKNA
提取碼:gf0g