我正在尝试构建一个 JAR Artifact ,它需要来自 bintray 存储库的自定义依赖项,例如:
https://dl.bintray.com/foo/bar
是否可以指示使用此类库的项目应该解决额外存储库中的依赖项?
还是我应该采取另一种方法来提供它?
最佳答案
TL;博士
构建一个包含依赖项的胖 jar。
长版
是的,有可能指示使用 Gradle 插件的项目从非默认存储库下载插件依赖项。但它需要用户干预,这可能不是您想听到的。
以下 settings.gradle 应该从 Gradle Plugin Portal 中检索您的插件并解决您的 Bintray 存储库中的依赖项:
pluginManagement {
repositories {
maven {
url 'https://dl.bintray.com/foo/bar'
}
gradlePluginPortal()
}
}
这记录在 Plugin Management 下.
请注意,我的回答有点含糊,因为我从未做过类似的事情。我能说的是 spring-cloud-contract插件对快照版本正是这样做的。
恕我直言,在您的特定情况下,您可以通过构建包含依赖项的胖 jar 来获得最佳用户体验。一个非凡的伴侣是 Gradle Shadow Plugin .它还具有 additional functionality对于 Gradle 插件,如果您需要它们。
关于java - 使用自定义存储库中的依赖项构建 JAR,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62127714/