本地倉庫配置android
配置環境變量GRADLE_USER_HOME,並指向你的一個本地目錄,用來保存Gradle下載的依賴包。spring
遠程倉庫配置數據庫
通常Gradle、maven從中央倉庫mavenCentral() http://repo1.maven.org/maven2/下載依賴包,可是在國內下載速度巨慢,咱們只能使用國內的鏡像。
因此每一個Gradle構建的項目中,咱們能夠在build.gradle作以下配置maven
repositories { maven { url 'http://maven.aliyun.com/nexus/content/groups/public/' } mavenCentral() }
每一個項目都如此配置不免麻煩些,咱們能夠配置一個全局配置文件。gradle
.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簡介ui
init.gradle文件在build開始以前執行,因此你能夠在這個文件配置一些你想預先加載的操做
例如配置build日誌輸出、配置你的機器信息,好比jdk安裝目錄,配置在build時必須我的信息,好比倉庫或者數據庫的認證信息,and so on.google
啓用init.gradle文件的方法:
一、在命令行指定文件,例如:gradle –init-script yourdir/init.gradle -q taskName.你能夠屢次輸入此命令來指定多個init文件
二、把init.gradle文件放到USER_HOME/.gradle/ 目錄下.
三、把以.gradle結尾的文件放到USER_HOME/.gradle/init.d/ 目錄下.
四、把以.gradle結尾的文件放到GRADLE_HOME/init.d/ 目錄下.url
若是存在上面的4種方式的2種以上,gradle會按上面的1-4序號依次執行這些文件,若是給定目錄下存在多個init腳本,會按拼音a-z順序執行這些腳本
相似於build.gradle腳本,init腳本有時groovy語言腳本。每一個init腳本都存在一個對應的gradle實例,你在這個文件中調用的全部方法和屬性,都會
委託給這個gradle實例,每一個init腳本都實現了Script接口spa
下面的例子是在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]
經常使用倉庫列表
repositories { mavenCentral() maven { url "https://jitpack.io" } maven { url "http://maven.aliyun.com/nexus/content/groups/public/" } maven { url 'http://maven.oschina.net/content/groups/public/' } maven { url 'https://oss.sonatype.org/content/repositories/snapshots/' } maven { url "http://maven.springframework.org/release" } maven { url "http://maven.restlet.org" } maven { url "http://mirrors.ibiblio.org/maven2" } maven { url "http://repo.baichuan-android.taobao.com/content/groups/BaichuanRepositories/" } maven { url 'https://maven.fabric.io/public' } jcenter() google() }