如何在Gradle动态版本上设置上限?

时间:2014-04-21 18:50:28

标签: gradle versioning dependency-management

我无法找到有关Gradle动态版本语法的任何明确文档 - official docs中的示例为1.+2.+,两者似乎都没有上限。

假设我的存储库中有1.0-SNAPSHOT2.0-SNAPSHOT,我希望某个项目可以引入第一个以后的任何稳定1.x,但是不是第二个。

我已经尝试了Maven syntax[1.0,2.0))和Ivy syntax[1.0,2.0[)。这两个都引入了2.0-SNAPSHOT。为什么? 2.0-SNAPSHOT是否被视为“小于”2.0

基于这个假设,我尝试了明显的黑客攻击:[1.0,2.0-SNAPSHOT)[1.0,2.0-SNAPSHOT[,但这两种方法都只是失败的依赖解析。

如何告诉Gradle我只想要版本1.x

1 个答案:

答案 0 :(得分:1)

看起来答案是+包含隐式上限。因此1.+表示“以1.

开头的任何版本

这似乎不是Gradle文档中的任何位置,但是Ivy记录了它:

  
      
  • 以+ +结束修订   选择依赖模块的最新子修订版。例如,   如果依赖模块存在于修订版1.0.3,1.0.7和1.1.2中,“1.0。+”将选择1.0.7。
  •