Android Studio阿里镜像配置
如果你之前设置过 Android Studio 的 HTTP Proxy,然后又取消了代理设置,那么很有可能 Andoid Studio gradle 再次编译时仍然会走代理设置,造成依赖资源一直下载失败。
分为两种:
单独工程配置
1.删除 Android Studio 的代理设置
首先你需要确认你已经在 Settings -> Appearance&Behavior -> System Settings -> HTTP Proxy 中选中了 No Proxy。
然后找到项目根目录下的 gradle.properties 文件,打开查看该文件中是否有关于 proxy 设置(代理的地址和端口)的相关语句,删除这些内容,让该文件看起来大致是这个样子(如果你没有添加其他设置的话):
最后,你需要找到你的另一个 gradle.properties 文件:C:\Users\Administrator.gradle\gradle.properties:
打开该文件,和上面的操作一样,删除与 proxy 设置相关的语句,让该文件的内容看起来大致是这样(如果你没有添加其他设置的话):
2.让项目通过阿里云 maven jcenter 下载依赖资源
打开项目根目录下的 build.gradle(Project:项目名称一级的gradle),如下所示添加阿里 maven 库地址:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
| // Top-level build file where you can add configuration options common to all sub-projects/modules. buildscript { repositories { <span >// 添加阿里云 maven 地址 </span> maven <span >{</span> url <span >'http://maven.aliyun.com/nexus/content/groups/public/'</span> <span >}</span> maven <span >{</span> url <span >'http://maven.aliyun.com/nexus/content/repositories/jcenter'</span> <span >}</span>
<span >// jcenter()</span> <span >google</span><span >(</span><span >)</span> <span >}</span> dependencies <span >{</span> classpath <span >'com.android.tools.build:gradle:3.2.1'</span> <span >// NOTE: Do not place your application dependencies here; they belong</span> <span >// in the individual module build.gradle files</span> <span >}</span> }
allprojects { repositories { <span >// 添加阿里云 maven 地址 </span> maven <span >{</span> url <span >'http://maven.aliyun.com/nexus/content/groups/public/'</span> <span >}</span> maven <span >{</span> url <span >'http://maven.aliyun.com/nexus/content/repositories/jcenter'</span> <span >}</span>
<span >// jcenter()</span> <span >google</span><span >(</span><span >)</span> <span >}</span> }
task clean(type: Delete) { delete rootProject.buildDir }
|
重新 SYNC 项目,编译时的资源下载一般就会如丝般顺滑了。
全局配置
在C:\Users\Administrator.gradle中新建init.gradle,并输入如下内容:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
| allprojects{ repositories { def ALIYUN_REPOSITORY_URL = 'http://maven.aliyun.com/nexus/content/groups/public' def ALIYUN_JCENTER_URL = 'http://maven.aliyun.com/nexus/content/repositories/jcenter' all { ArtifactRepository repo -> if(repo instanceof MavenArtifactRepository){ def url = repo.url.toString() if (url.startsWith('https://repo1.maven.org/maven2')) { project.logger.lifecycle "Repository ${repo.url} replaced by $ALIYUN_REPOSITORY_URL." remove repo } if (url.startsWith('https://jcenter.bintray.com/')) { project.logger.lifecycle "Repository ${repo.url} replaced by $ALIYUN_JCENTER_URL." remove repo } } } maven { url ALIYUN_REPOSITORY_URL url ALIYUN_JCENTER_URL } } }
allprojects{ repositories { def ALIYUN_REPOSITORY_URL = 'http://maven.aliyun.com/nexus/content/groups/public' def ALIYUN_JCENTER_URL = 'http://maven.aliyun.com/nexus/content/repositories/jcenter' all { ArtifactRepository repo -> if(repo instanceof MavenArtifactRepository){ def url = repo.url.toString() if (url.startsWith('https://repo1.maven.org/maven2')) { project.logger.lifecycle "Repository ${repo.url} replaced by $ALIYUN_REPOSITORY_URL." remove repo } if (url.startsWith('https://jcenter.bintray.com/')) { project.logger.lifecycle "Repository ${repo.url} replaced by $ALIYUN_JCENTER_URL." remove repo } } } maven { url ALIYUN_REPOSITORY_URL url ALIYUN_JCENTER_URL } } }
|
重启Android Studio 并clean rebuild 即可