1. 程式人生 > >Android Studio中gradle構建依賴JCenter下載太慢的解決方案

Android Studio中gradle構建依賴JCenter下載太慢的解決方案


方案一:

將jcenter下載由https修改為http,即由https://jcenter.bintray.com/調整http://jcenter.bintray.com/。 

在build.gradle裡,增加jcenter(){url 'http://jcenter/bintray.com/'} ,如下:

buildscript {

    if (project.hasProperty('enableOwasp')) {

        repositories {

           // mavenCentral() /* 取消 */

            jcenter(){url 'http://jcenter.bintray.com/'
} /* 增加*/         }         dependencies {             //             classpath 'org.owasp:dependency-check-gradle:1.4.0'            // classpath 'org.owasp:dependency-check-gradle:3.5.0'         }     } }
allprojects {

    repositories{

        jcenter(){url 'http://jcenter.bintray.com/'/*增加,改成http
方式*/        // mavenLocal() /*取消*/    
} }

方案二:

把切換到國內的Maven映象倉庫,如開源中國的Maven庫。
國內下載比較快的Maven倉庫映象:
#收集的比較快的maven倉庫
http://maven.wso2.org/nexus/content/groups/public/
http://jcenter.bintray.com/
http://maven.aliyun.com/nexus/content/groups/public/
http://maven.antelink.com/content/repositories/central/
http://nexus.openkoala.org/nexus/content/groups/Koala-release/
http://maven.tmatesoft.com/content/groups/public/
http://mavensync.zkoss.org/maven2/
http://maven.springframework.org/release/

將下面這段Copy到名為init.gradle檔案中,並儲存到USER_HOME/.gradle/

資料夾下即可,init.gradle檔案其實是Gradle的初始化指令碼(Initialization Scripts),也是執行時的全域性配置。

allprojects {

    repositories{

        def REPOSITORY_URL = 'http://maven.aliyun.com/nexus/content/groups/public/'
        all { ArtifactRepository repo ->
            if(repo instanceof MavenArtifactRepository){
                def url = repo.url.toString()
                if (url.startsWith('https://repo1.maven.org/maven2') || url.startsWith('https://jcenter.bintray.com/')) {
                    project.logger.lifecycle "Repository ${repo.url} replaced by $REPOSITORY_URL."
                    remove repo
                }
            }
        }
        maven {
            url REPOSITORY_URL
        }
    }
 }
}

以上內容為我轉載的,加入ini.gradle不知道為什麼不好用,沒有去MAVEN庫裡下載,第一種方法用http://jcenter.bintray.com/也沒有成功,於是修改到阿里雲

maven { url 'http://maven.aliyun.com/nexus/content/groups/public/' }
jcenter()//{url 'http://jcenter.bintray.com/'} /* 增加*/
感謝作者的經驗分享,感謝阿里雲~~~

另外,如果你的裡邊有這個google(),請把它註釋了,要不然還是會先去google下載的。

再次感謝阿里雲,我都要放棄去買VPN了,激動一下。回頭再試一下那個init.gradled的初始化。