解决Android Studio中Gradle下载超时问题
在国内使用Android Studio开发时,我们常常会遇到Gradle下载缓慢甚至超时的问题:
Could not install Gradle distribution from 'https://services.gradle.org/distributions/gradle-8.11.1-bin.zip'.
Reason: java.net.SocketTimeoutException: Connect timed out
这个问题主要有两个方面需要解决:Gradle分发包下载和依赖仓库访问。
解决方案一:配置阿里云镜像仓库
步骤1: 修改settings.gradle.kts
首先,我们需要在settings.gradle.kts中添加阿里云镜像仓库以加速依赖下载:
pluginManagement {
repositories {
maven { url = uri("https://maven.aliyun.com/repository/gradle-plugin") }
maven { url = uri("https://maven.aliyun.com/repository/public") }
gradlePluginPortal()
google()
mavenCentral()
}
}
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
repositories {
maven { url = uri("https://maven.aliyun.com/repository/public") }
maven { url = uri("https://maven.aliyun.com/repository/google") }
google()
mavenCentral()
}
}
rootProject.name = "compose"
include(":app")
注意:如果您使用的是Groovy DSL(
settings.gradle而不是settings.gradle.kts),语法略有不同:maven { url 'https://maven.aliyun.com/repository/public' }
解决方案二:手动下载并放置Gradle
如果配置阿里云镜像后仍然无法下载,可以采取这种方法:
- 从阿里云Gradle镜像站手动下载对应版本的Gradle压缩包(如
gradle-8.11.1-bin.zip) - 找到Gradle的本地缓存目录:
- Windows:
C:\Users\用户名\.gradle\wrapper\dists - Mac/Linux:
~/.gradle/wrapper/dists
- Windows:
- 在该目录下找到或创建对应版本的文件夹(如
gradle-8.11.1-bin) - 将下载好的zip文件放入该目录
代理设置
如果您使用代理上网,可以在gradle.properties中配置:
systemProp.http.proxyHost=127.0.0.1
systemProp.http.proxyPort=7890
systemProp.https.proxyHost=127.0.0.1
systemProp.https.proxyPort=7890
如果您有任何问题或建议,欢迎在评论区留言交流。