博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
为Gradle设置镜像,解决jcenter依赖无法下载或者下载过慢问题
阅读量:6606 次
发布时间:2019-06-24

本文共 1679 字,大约阅读时间需要 5 分钟。

前言

这其实是一个烂大街的教程了。百度上一堆解决方案,好用的没几个。所以决定温习一下,因为最近写了几个Flutter插件,有很人多表示无法下载Android依赖,于是乎又是翻墙又是如何如何。其实gradle依赖是不需要翻墙的,不过下载速度很不美妙,加之一些网络状况也不是太好,所以需要使用国内镜像来解决这个问题。当然了,使用国内镜像也可能会有弊端,如更新不及时,但是确实可以解决问题。

简单玩法

简单玩法其实就是直接修改项目根目录的build.gradle就好:

allprojects {    repositories {        google()        jcenter()       // maven库       def cn = "http://maven.aliyun.com/nexus/content/groups/public/"       def abroad = "http://central.maven.org/maven2/"       // 先从url中下载jar若没有找到,则在artifactUrls中寻找       maven {         url cn         artifactUrls abroad       }    }}

高级玩法

如果每个项目都配置一遍可能略显麻烦,所以我们可以为初gradle写一个初始化脚本。

~/.gradle/目录下新建一个init.gradle文件(Windows默认是C:\Users\UserName\.gradle),并录入以下内容:

allprojects{    repositories {        google()        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 }        maven { url ALIYUN_JCENTER_URL }            }}

当然了,也可以将这段脚本放在项目根目录下的build.gradle中。

以上,再次build时候就会飞一样。

  • 参考 :Gradle官网文档。

转载地址:http://fnbso.baihongyu.com/

你可能感兴趣的文章
通用的Adapter
查看>>
你真的了解WebSocket吗?
查看>>
Eclipse版本列表
查看>>
缓存的一些理解
查看>>
Java中的字符串
查看>>
Python初探
查看>>
Composer安装使用
查看>>
Android触碰事件
查看>>
Android应用开发-小巫CSDN博客客户端开发开篇
查看>>
享元模式
查看>>
HDU 2037 今年暑假不AC (贪心)
查看>>
Mybatis结合Spring注解自己主动扫描源代码分析
查看>>
数据库(分库分表)中间件对比
查看>>
2014年辛星jquery解读第三节 Ajax
查看>>
extern与头文件(*.h)的区别和联系
查看>>
opencv源代码分析之二:cvhaartraining.cpp
查看>>
《Javascript_Dom 编程艺术》(第2版)读书笔记
查看>>
Ubuntu 16.04通过Trickle限制某个软件的下载/上传速度
查看>>
Ubuntu 16.04安装Sublime Text3
查看>>
com.android.dex.DexException: Multiple dex files define Lcom/sina/sso/RemoteSSO;
查看>>