Gradle編譯時下載依賴失敗解決方法


如果Gradle在編譯的時候沒有在本地倉庫中發現依賴,就會從遠程倉庫中下載,默認的遠程倉庫為mavenCentral(),也就是http://repo1.maven.org/maven2/,但是往往訪問速度特別慢,不翻牆經常會下載超時或者需要很長時間導致Build失敗,因此,可以用國內的倉庫代替:


修改單獨項目

在項目的build.gradle文件中,修改repositories配置 
由:

    repositories { mavenCentral() }

改為:

repositories { maven{ url 'http://maven.aliyun.com/nexus/content/groups/public/'} }

或:

repositories { maven{ url 'http://maven.oschina.net/content/groups/public/'} }

這樣就可以從國內的鏡像中下載依賴,速度能提高不少

注意:

  • build.gradle文件里有兩處repositories,都需要改掉
  • 阿里雲的速度比較快,更穩定

更改所有項目

如果想一次更改所有的倉庫地址,可以在USER_HOME/.gradle/(如C:\Users\hellowood\.gradle)文件夾下添加init.gradle文件來配置

  • init.gradle
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/')) { remove repo } } } maven { url REPOSITORY_URL } } }

這樣就可以在項目編譯的時候從阿里的倉庫中下載依賴了


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM