【发布时间】:2021-01-21 19:30:52
【问题描述】:
我的 Gradle 实施使用 Maven Central 和一个存储我公司 jar 的本地存储库。有没有办法告诉 Gradle 在本地存储库中只搜索组“com.myCompany”的依赖项?当在我的本地存储库中找不到公共 jar 时,我遇到了错误,我认为这可能是解决此问题的一种方法。
【问题讨论】:
标签: gradle
我的 Gradle 实施使用 Maven Central 和一个存储我公司 jar 的本地存储库。有没有办法告诉 Gradle 在本地存储库中只搜索组“com.myCompany”的依赖项?当在我的本地存储库中找不到公共 jar 时,我遇到了错误,我认为这可能是解决此问题的一种方法。
【问题讨论】:
标签: gradle
我不认为这是可能的。但是如果你得到错误,当你的本地仓库中没有公共 jars 时,这很可能是你的私人仓库的问题。当未找到请求的 jar 时,它应该返回正确的 HTTP 404。我过去在 Archiva 上遇到过问题。但是在 Archiva 中有一个选项。
一种解决方法可能是更改构建脚本中存储库的顺序:
而不是
repositories {
maven { url:...}
mavenCentral()
}
试试
repositories {
mavenCentral()
maven { url:...}
}
在这种情况下,Gradle 将首先尝试 mavenCentral,它的行为确实正确,最后只有您的本地存储库。
【讨论】:
是的,它is possible。示例:
repositories {
maven {
url "https://artifacts.myCompany.com/m2_repo"
content {
includeGroup "com.myCompany"
}
}
}
【讨论】: