作为一名长期使用Android Studio进行开发的工程师,我深知Gradle连接超时(Connect timed out)问题有多么令人头疼。这个问题通常发生在首次构建项目或同步Gradle依赖时,尤其是在国内网络环境下更为常见。本文将分享一套经过实战验证的完整解决方案,帮助开发者彻底摆脱这个困扰。
Gradle连接超时问题主要源于以下几个原因:
重要提示:在尝试任何解决方案前,请先确认你的网络连接正常,没有启用任何可能干扰连接的代理设置。
这是最直接有效的解决方案,通过将默认仓库替换为国内镜像源,可以显著提升依赖下载速度。具体操作如下:
settings.gradle文件pluginManagement和dependencyResolutionManagement部分添加阿里云镜像源groovy复制pluginManagement {
repositories {
gradlePluginPortal()
google()
mavenCentral()
// 添加阿里云Gradle插件仓库
maven { url 'https://maven.aliyun.com/repository/gradle-plugin/' }
// 添加阿里云Google仓库镜像
maven { url 'https://maven.aliyun.com/repository/google' }
// 添加阿里云公共仓库镜像
maven { url 'https://maven.aliyun.com/repository/public' }
}
}
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.PREFER_SETTINGS)
repositories {
google()
mavenCentral()
// 添加阿里云镜像源
maven { url 'https://maven.aliyun.com/repository/public' }
maven { url 'https://maven.aliyun.com/repository/google' }
flatDir {
dirs "${project(':unityLibrary').projectDir}/libs"
}
}
}
为什么这样配置有效:
即使配置了镜像仓库,Gradle Wrapper仍可能因为下载Gradle分发包而超时。解决方法如下:
gradle/wrapper/gradle-wrapper.properties文件distributionUrl修改为国内镜像源:properties复制distributionUrl=https\://mirrors.cloud.tencent.com/gradle/gradle-8.0-bin.zip
可选的国内镜像源包括:
https://mirrors.cloud.tencent.com/gradle/https://maven.aliyun.com/repository/gradle/https://repo.huaweicloud.com/gradle/版本选择建议:
为了在所有项目中应用这些优化,可以配置全局Gradle设置:
.gradle文件夹中创建或修改init.gradle文件groovy复制allprojects {
repositories {
// 优先使用阿里云镜像
maven { url 'https://maven.aliyun.com/repository/public' }
maven { url 'https://maven.aliyun.com/repository/google' }
maven { url 'https://maven.aliyun.com/repository/gradle-plugin' }
// 保留原始仓库作为后备
google()
mavenCentral()
}
}
启用Gradle构建缓存:
在gradle.properties中添加:
properties复制org.gradle.caching=true
配置并行构建:
properties复制org.gradle.parallel=true
增加堆内存:
properties复制org.gradle.jvmargs=-Xmx4096m -XX:MaxMetaspaceSize=1024m
可能原因:
settings.gradle的正确位置解决方案:
settings.gradle文件结构,确保镜像源添加在repositories块内现象:
解决方案:
对于包含多个子模块的项目,需要注意:
build.gradle中没有覆盖仓库配置settings.gradle中管理仓库定期更新镜像配置:
建立团队统一配置:
settings.gradle和gradle-wrapper.properties纳入项目模板监控构建性能:
--profile参数生成构建报告通过以上全套解决方案,Android Studio中的Gradle连接超时问题应该能够得到彻底解决。我在多个大型项目中使用这些配置,构建时间从原来的10多分钟缩短到2-3分钟,效果非常显著。