概述
Android 使用 gradle 来构建项目,默认使用的 jcenter() 和 google() 仓库在国内使用,访问速度慢,经常 sync 一次要等半小时,结果还提示失败。通过几行配置,切换成阿里的镜像服务器后,sync 速度相当快。
本文档针对某一个项目修改仓库镜像,如果要针对所有项目修改,需要修改 Maven 的全局配置文件 settings.xml
什么是镜像?
镜像一般是指对某个对象的完全映射。
以阿里云的镜像为例,由于国内访问 jcenter() 和 google() 的服务器很慢,阿里针对 jcenter() 和 google() 推出了一个镜像服务器,定期与 jcenter() 和 google() 仓库进行同步。
有了这个国内的镜像,为开发者节省非常多的时间。
配置
修改 project 根目录下 build.gradle 配置文件内容,
buildscript {
repositories {
maven { url 'http://maven.aliyun.com/nexus/content/groups/public' }
maven { url 'https://maven.aliyun.com/repository/google' }
maven { url 'https://maven.aliyun.com/repository/jcenter'}
}
...
}
allprojects {
repositories {
maven { url 'http://maven.aliyun.com/nexus/content/groups/public' }
maven { url 'https://maven.aliyun.com/repository/google' }
maven { url 'https://maven.aliyun.com/repository/jcenter'}
}
}
配置完成后,在项目内的依赖库就会去阿里的镜像仓库去下载,国内访问速度当然快阿。原有的 Maven 仓库和镜像的对应关系为,
jcenter() -> maven { url 'https://maven.aliyun.com/repository/jcenter’}
google() -> maven { url ‘https://maven.aliyun.com/repository/google’ }
拓展
阿里云不仅做了 Maven 镜像,他们还有一个官方镜像站,站内有容器镜像、系统镜像、语言镜像等,感兴趣的同学可以去了解一下。