gpt4 book ai didi

gradle - 在 build.gradle 中如何提取和重用 Maven 存储库配置?

转载 作者:行者123 更新时间:2023-12-03 21:12:53 24 4
gpt4 key购买 nike

我有这个 build.gradle文件:

repositories {
maven {
credentials {
username "$artifactory_user"
password "$artifactory_password"
}
url 'http://some.domain/artifactory/repo'
}
}

publishing {
repositories {
publications {
maven(MavenPublication) {
from components.java
}
}
maven {
credentials {
username "$artifactory_user"
password "$artifactory_password"
}
url 'http://some.domain/artifactory/repo'
}
}
}

我想提取并重用 Maven 存储库定义。

这不起作用:
repositories {
mavenRepository()
}

publishing {
repositories {
publications {
maven(MavenPublication) {
from components.java
}
}
mavenRepository()
}
}

private void mavenRepository() {
maven {
credentials {
username "$artifactory_user"
password "$artifactory_password"
}
url 'http://some.domain/artifactory/repo'
}
}

它导致

Could not find method mavenRepository() for arguments [gradle-dev] on repository container of type org.gradle.api.internal.artifacts.dsl.DefaultRepositoryHandler.



我怎样才能实现这个目标?

最佳答案

假设你有一个单独的 repositories.gradle 文件并命名你的 maven repo ..

maven {
name 'myrepo'
url 'https://xxxx'
credentials {
username = System.getenv("xxx") ?: "${xxx}"
password = System.getenv("xxx") ?: "${xxx}"
}
}
maven { name 'anotherrepo' }
然后在根项目级别,您可以运行:
apply from: "$rootDir/gradle/repositories.gradle"
这将使用所有存储库填充存储库。然后使用填充一个特定的其他人,您可以使用:
repositories.add(rootProject.repositories.getByName('myrepo'))
我在这个博客页面上找到了答案: https://themightyprogrammer.dev/snippet/reusing-gradle-repo
感谢mayprogrammer!

关于gradle - 在 build.gradle 中如何提取和重用 Maven 存储库配置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54330658/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com