gradle使用maven库设置
程序员文章站
2022-07-12 08:12:29
...
1.找的maven仓库的位置复制路径I:\repository,由于我是使用idea设置的maven仓库位置
2.配置环境变量GRADLE_USER_HOME 将上面的I:\repository配置进去
3.重启idea验证 是否生效 可以看到Gradle模块的Service directory path变成了我们设置的GRADLE_USER_HOME环境的变量的位置,说明gradle用maven的仓库 生效了
4.配置gradle工程文件加载jar包仓库的优先级,让其先从本地仓库找,如果找不到,再从*仓库下载
repositories {
/**
* 先让gradle从本地仓库找,找不到再从下面的mavenCentral()*仓库去找jar包
*/
mavenLocal()
mavenCentral()
}
5.配置使用阿里云镜像
- 对单个项目生效,在项目中的build.gradle修改内容
buildscript {
repositories {
maven {
url 'http://maven.aliyun.com/nexus/content/groups/public/'
}
maven {
url 'http://maven.aliyun.com/nexus/content/repositories/jcenter'
}
}
}
allprojects {
repositories {
maven {
url 'http://maven.aliyun.com/nexus/content/groups/public/'
}
maven {
url 'http://maven.aliyun.com/nexus/content/repositories/jcenter'
}
}
}
- 对所有项目生效,在USER_HOME/.gradle/下创建init.gradle文件
allprojects {
repositories {
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
url ALIYUN_JCENTER_URL
}
}
}