是否可以让 gradle 解析像 '5.0.+' 这样的 ivy 依赖项以获得像 '5.0.0.1.12.24' 这样的版本?

Posted

技术标签:

【中文标题】是否可以让 gradle 解析像 \'5.0.+\' 这样的 ivy 依赖项以获得像 \'5.0.0.1.12.24\' 这样的版本?【英文标题】:Is it possible to make gradle resolve ivy dependencies like '5.0.+' in order to get versions like '5.0.0.1.12.24'?是否可以让 gradle 解析像 '5.0.+' 这样的 ivy 依赖项以获得像 '5.0.0.1.12.24' 这样的版本? 【发布时间】:2017-08-04 19:50:46 【问题描述】:

我们目前正在重写由 gradle 处理的版本控制。

我们版本的最后一个数字禁止 svn 修订号。在解决依赖关系时,我们在最后一个数字上使用通配符+

testCompile 'my.great.company:ProjectName:5.0.0.0.0.+'

但这只会获取版本的最后一位数字的最高数字,即修订版。

但是,如果我想要最新的整体版本,例如:

5.1.2.3.4.25

我想这样写

testCompile 'my.great.company:ProjectName:5.+'

我发现,可以以任何您想要的方式定义版本(只要它是 UTF-8),但我不知道是否可以解决上述依赖关系?

【问题讨论】:

【参考方案1】:

是的,可以这样做。

你可以像这样定义你的依赖

testCompile 'my.great.company:ProjectName:5.+'

它总是采用最新版本,它在指定的 Ivy 存储库中找到。

偶数

testCompile 'my.great.company:ProjectName:5.1.2.+'

在 5.1.2 之后工作并采用最新版本

唯一的限制是,+ 必须在最后一位。

【讨论】:

以上是关于是否可以让 gradle 解析像 '5.0.+' 这样的 ivy 依赖项以获得像 '5.0.0.1.12.24' 这样的版本?的主要内容,如果未能解决你的问题,请参考以下文章

AGP 3.5是否与Gradle 6兼容?

为 Gradle 和 Cordova 5 指定签名配置

AGP 3.5 与 Gradle 6 兼容吗?

是否有一个 SaxParser 可以读取 json 并触发事件,所以它看起来像 xml

如何让IDEA像STS那样高效调试Spring Boot程序

如何让 Eclipse 使用 Gradle 生成 MapStruct 映射器