Gradle找不到不存在的前缀版本传递依赖项

问题描述 投票:0回答:1

我有一个多模块gradle项目,在该模块中,我在运行时在compile配置中添加了依赖项。

那些依赖项获取具有不存在的版本前缀的传递性依赖项。

情况就是这样

compile 'group:moduleA:version.+'

moduleA下载具有相同moduleB前缀表示法的version.+,并下载另一个具有相同前缀表示法的moduleCmoduleC存在于版本10及更高版本和8及更低版本的工件中,因此没有版本号为9的版本,并且gradle坚持使用版本9查找moduleC,但不会获取高于或低于其的版本。

如果要查找的版本不存在,如何使gradle获取另一个版本?

[请提供任何澄清,并感谢您的帮助。

gradle dependencies build.gradle versioning transitive-dependency
1个回答
0
投票

使用9.+之类的版本时,Gradle会查找与该前缀before +的部分匹配的所有版本。

但是,如果不存在这样的版本,则无法使Gradle忽略该部分。

如果moduleC的版本可以是任何东西,那么您可以简单地使用+而没有任何前缀。

请注意,即使发布了新版本的moduleC,即使未进行任何更改,这样做也可能会使您在构建中受损。

您还可以将此动态版本分辨率与dependency locking结合使用,以更好地控制何时升级moduleC

© www.soinside.com 2019 - 2024. All rights reserved.