Android Gradle 国内主流镜像仓库全局配置方案

Android Gradle 国内主流镜像仓库全局配置方案

以下是整合了国内主流镜像仓库的全局配置方案,包括阿里云、华为云、腾讯云等多个可靠镜像源。

方案一:项目级 build.gradle 完整配置 (推荐)

buildscript {
 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' }
 maven { url 'https://maven.aliyun.com/repository/central' }
 
 // 华为云镜像
 maven { url 'https://repo.huaweicloud.com/repository/maven/' }
 
 // 腾讯云镜像
 maven { url 'https://mirrors.cloud.tencent.com/nexus/repository/maven-public/' }
 
 // 网易镜像
 maven { url 'https://mirrors.163.com/maven/repository/maven-public/' }
 
 // 首都在线
 maven { url 'https://maven.oscs.oschina.net/content/groups/public/' }
 
 // 保留中央仓库
 mavenCentral()
 
 // 保留Google仓库(备选)
 google()
 }
}
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/central' }
 
 // 华为云镜像
 maven { url 'https://repo.huaweicloud.com/repository/maven/' }
 
 // 腾讯云镜像
 maven { url 'https://mirrors.cloud.tencent.com/nexus/repository/maven-public/' }
 
 // 网易镜像
 maven { url 'https://mirrors.163.com/maven/repository/maven-public/' }
 
 // 首都在线
 maven { url 'https://maven.oscs.oschina.net/content/groups/public/' }
 
 // 保留中央仓库
 mavenCentral()
 
 // 保留Google仓库(备选)
 google()
 }
}

方案二:全局 init.gradle 配置 (用户级)

~/.gradle/init.gradle​ 文件中添加:

allprojects {
 repositories {
 // 移除默认仓库
 all { ArtifactRepository repo ->
 if (repo instanceof MavenArtifactRepository) {
 def url = repo.url.toString()
 if (url.contains('repo1.maven.org/maven2') || 
 url.contains('jcenter.bintray.com') || 
 url.contains('maven.google.com') || 
 url.contains('plugins.gradle.org/m2')) {
 remove repo
 }
 }
 }
 
 // 添加国内主流镜像仓库
 // 阿里云镜像
 maven { 
 url 'https://maven.aliyun.com/repository/public'
 allowInsecureProtocol = true
 }
 maven { 
 url 'https://maven.aliyun.com/repository/google'
 allowInsecureProtocol = true
 }
 maven { 
 url 'https://maven.aliyun.com/repository/gradle-plugin'
 allowInsecureProtocol = true
 }
 
 // 华为云镜像
 maven { 
 url 'https://repo.huaweicloud.com/repository/maven/'
 allowInsecureProtocol = true
 }
 
 // 腾讯云镜像
 maven { 
 url 'https://mirrors.cloud.tencent.com/nexus/repository/maven-public/'
 allowInsecureProtocol = true
 }
 
 // 网易镜像
 maven { 
 url 'https://mirrors.163.com/maven/repository/maven-public/'
 allowInsecureProtocol = true
 }
 
 // 首都在线
 maven { 
 url 'https://maven.oscs.oschina.net/content/groups/public/'
 allowInsecureProtocol = true
 }
 
 // 保留中央仓库
 mavenCentral()
 }
}

方案三:gradle-wrapper.properties 镜像配置

修改 gradle/wrapper/gradle-wrapper.properties​ 使用国内镜像下载Gradle:

# 阿里云镜像
distributionUrl=https\://mirrors.aliyun.com/gradle/gradle-8.0-bin.zip
# 或腾讯云镜像
# distributionUrl=https\://mirrors.cloud.tencent.com/gradle/gradle-8.0-bin.zip
# 或华为云镜像
# distributionUrl=https\://repo.huaweicloud.com/gradle/gradle-8.0-bin.zip

方案四:全局 gradle.properties 配置

~/.gradle/gradle.properties​ 中添加:

# 使用阿里云镜像代理
systemProp.http.proxyHost=mirrors.aliyun.com
systemProp.http.proxyPort=80
systemProp.https.proxyHost=mirrors.aliyun.com
systemProp.https.proxyPort=80
# 或者使用腾讯云代理
# systemProp.http.proxyHost=mirrors.cloud.tencent.com
# systemProp.http.proxyPort=80
# systemProp.https.proxyHost=mirrors.cloud.tencent.com
# systemProp.https.proxyPort=80

国内主流镜像仓库列表

镜像提供商仓库地址
阿里云https://maven.aliyun.com/repository/public
阿里云(Google)https://maven.aliyun.com/repository/google
阿里云(Gradle插件)https://maven.aliyun.com/repository/gradle-plugin
华为云https://repo.huaweicloud.com/repository/maven/
腾讯云https://mirrors.cloud.tencent.com/nexus/repository/maven-public/
网易https://mirrors.163.com/maven/repository/maven-public/
首都在线https://maven.oscs.oschina.net/content/groups/public/
中国科学技术大学https://mirrors.ustc.edu.cn/nexus/content/groups/public/

最佳实践建议

  1. 推荐组合:阿里云 + 华为云 + 腾讯云镜像组合使用
  2. 优先级:将最快的镜像源放在前面
  3. 保留原始仓库:保留 mavenCentral()​ 和 google()​ 作为备选
  4. 版本更新:定期检查镜像仓库是否同步了最新依赖
  5. 网络测试:不同地区对不同镜像的访问速度可能有差异,建议测试后选择最优组合

以上配置已经覆盖了国内主流的镜像仓库,可以有效解决Android项目构建时的依赖下载问题。

作者:一翼诚原文地址:https://www.cnblogs.com/hejing-michael/p/19000066/android-gradle-global-configuration-solution-for-mainland-mirror-warehouses-in-china-27yelo

%s 个评论

要回复文章请先登录注册