前言
這其實(shí)是一個(gè)爛大街的教程了峡竣。百度上一堆解決方案,好用的沒(méi)幾個(gè)奶段。所以決定溫習(xí)一下兔综,因?yàn)樽罱鼘懥藥讉€(gè)Flutter插件次绘,有很人多表示無(wú)法下載Android依賴,于是乎又是翻墻又是如何如何类浪。其實(shí)gradle依賴是不需要翻墻的,不過(guò)下載速度很不美妙肌似,加之一些網(wǎng)絡(luò)狀況也不是太好费就,所以需要使用國(guó)內(nèi)鏡像來(lái)解決這個(gè)問(wèn)題。當(dāng)然了川队,使用國(guó)內(nèi)鏡像也可能會(huì)有弊端力细,如更新不及時(shí),但是確實(shí)可以解決問(wèn)題固额。
簡(jiǎn)單玩法
簡(jiǎn)單玩法其實(shí)就是直接修改項(xiàng)目根目錄的build.gradle就好:
allprojects {
repositories {
google()
jcenter()
// maven庫(kù)
def cn = "http://maven.aliyun.com/nexus/content/groups/public/"
def abroad = "http://central.maven.org/maven2/"
// 先從url中下載jar若沒(méi)有找到艳汽,則在artifactUrls中尋找
maven {
url cn
artifactUrls abroad
}
}
}
高級(jí)玩法
如果每個(gè)項(xiàng)目都配置一遍可能略顯麻煩,所以我們可以為初gradle寫一個(gè)初始化腳本对雪。
在~/.gradle/目錄下新建一個(gè)init.gradle文件(Windows默認(rèn)是C:\Users\UserName\
.gradle)河狐,并錄入以下內(nèi)容:
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 }
}
}
當(dāng)然了,也可以將這段腳本放在項(xiàng)目根目錄下的build.gradle中瑟捣。
以上馋艺,再次build時(shí)候就會(huì)飛一樣。
- 參考 :Gradle官網(wǎng)文檔init_scripts迈套。