在我的国家与Gradle合作时,从maven central下载罐子是一项非常及时的工作
我想将mavenCentral改为maven-nexus:
这意味着每当我使用mavenCentral时,始终指向 oschina
------ ------编辑
我有很多mavenCentral项目,所以我不想更改每个文件。
现在在新脚本中我使用maven {url ...} 任何简单的方法?
任何人都可以发牢骚吗? 谢谢!
答案 0 :(得分:14)
对所有项目应用此更改的最简单方法是使用gradle init脚本强制使用oschina存储库而不是mavenCentral。你可以这样说:
allprojects{
repositories {
all { ArtifactRepository repo ->
println repo.url.toString()
if ((repo instanceof MavenArtifactRepository) && repo.url.toString().startsWith("https://repo1.maven.org/maven2")) {
project.logger.warn "Repository ${repo.url} removed. Only $coporateRepoUrl is allowed"
remove repo
}
}
maven {
url "http://maven.oschina.net/content/groups/public"
}
}
}
进入gradle init文件。
现在你可以通过调用" gradle build -I yourInitFile.gradle"来使用它。或者将此逻辑放入存储在init.gradle
目录中的gradle主目录中的USER_HOME/.gradle/
文件中。现在,每次gradle调用都会选中此项,而不会明确设置-I
另一个选项是创建自定义gradle分发,其中此文件存储在分发的init.d目录中。
答案 1 :(得分:5)
很容易!而不是:
repositories {
mavenCentral()
}
使用此:
repositories {
maven {
url "https://..."
}
}
答案 2 :(得分:2)
只需在模块目录中的build.gradle文件中设置存储库,如下所示:
repositories {
maven { url "http://maven.oschina.net/content/groups/public" }
}
答案 3 :(得分:1)
如果您有很多依赖项(即在所有build.gradle
文件中)和您正在使用的存储库网址
repositories {
maven {
url "https://www.myrepourl.com"
}
}
但是您只想在一个文件中更改该网址,然后执行以下操作:
gradle.properties
文件,然后添加以下行:REPO_URL=https://www.myrepourl.com
在所有其他build.gradle
个文件中复制以下内容:
repositories {
maven {
url project.REPO_URL
}
}
你可以添加&以这种方式使用更多属性。 这对我来说很有魅力。干杯!