gradle本地、遠程倉庫配置--轉

來源:互聯網
上載者:User

標籤:osi   tray   資料   使用   script   logger   tar   操作   placed   

75040806

本地倉庫配置
配置環境變數GRADLE_USER_HOME,並指向你的一個本地目錄,用來儲存Gradle下載的依賴包。


遠程倉庫配置
一般Gradle、maven從中央倉庫mavenCentral() http://repo1.maven.org/maven2/下載依賴包,但是在國內下載速度巨慢,我們只能使用國內的鏡像。
所以每個Gradle構建的項目中,我們可以在build.gradle做如下配置

repositories {
maven {
url ‘http://maven.aliyun.com/nexus/content/groups/public/‘
}
mavenCentral()
}

每個項目都如此配置難免麻煩些,我們可以配置一個全域設定檔。

.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/‘)) {
project.logger.lifecycle "Repository ${repo.url} replaced by $REPOSITORY_URL."
remove repo
}
}
}
maven {
url REPOSITORY_URL
}
}
}


init.gradle簡介
init.gradle檔案在build開始之前執行,所以你可以在這個檔案配置一些你想積極式載入的操作
例如配置build日誌輸出、配置你的機器資訊,比如jdk安裝目錄,配置在build時必須個人資訊,比如倉庫或者資料庫的認證資訊,and so on.

啟用init.gradle檔案的方法:
1、在命令列指定檔案,例如:gradle –init-script yourdir/init.gradle -q taskName.你可以多次輸入此命令來指定多個init檔案
2、把init.gradle檔案放到USER_HOME/.gradle/ 目錄下.
3、把以.gradle結尾的檔案放到USER_HOME/.gradle/init.d/ 目錄下.
4、把以.gradle結尾的檔案放到GRADLE_HOME/init.d/ 目錄下.

如果存在上面的4種方式的2種以上,gradle會按上面的1-4序號依次執行這些檔案,如果給定目錄下存在多個init指令碼,會按拼音a-z順序執行這些指令碼
類似於build.gradle指令碼,init指令碼有時groovy語言指令碼。每個init指令碼都存在一個對應的gradle執行個體,你在這個檔案中調用的所有方法和屬性,都會
委託給這個gradle執行個體,每個init指令碼都實現了Script介面

下面的例子是在build執行之前給所有的項目制定maven本地庫,這個例子同時在 build.gradle檔案指定了maven的倉庫中心,注意它們之間異同

build.gradle

repositories {
mavenCentral()
}

task showRepos << {
println "All repos:"
println repositories.collect { it.name }
}

init.gradle

allprojects {
repositories {
mavenLocal()
在命令列輸入命令:gradle –init-script init.gradle -q showRepos

> gradle --init-script init.gradle -q showRepos
All repos:
[MavenLocal, MavenRepo]

gradle本地、遠程倉庫配置--轉

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.