Gradle依赖项:是使用的最新版本还是最旧版本?

时间:2014-09-09 14:33:29

标签: gradle android-studio

我正在使用Android Studio 0.8.9,我的build.gradle中有以下一行:

compile group: 'com.nostra13.universalimageloader', name: 'universal-image-loader', version: '1.9.+'

在这种情况下使用的库的实际版本是什么? 1.9.0或1.9.3(最新)?

我问,因为我最近在BugSense中收到了BugI报告,但是在UniversalImageLoader中发生了崩溃,但堆栈跟踪与最新版本(1.9.3)无关

1 个答案:

答案 0 :(得分:2)

+表示它将使用最新版本的1.9.X系列,根据Maven Central截至目前:http://search.maven.org/#search%7Cga%7C1%7Ccom.nostra13.universalimageloader是1.9.3。

如果版本设置如此,如果要发布1.10.0,则不会选择它 - +符号只是版本号三元组第三部分的通配符。如果您想获得最新版本,可以使用:

compile 'com.nostra13.universalimageloader:universalimageloader:+'

请注意,我们并不建议您在版本号中使用+语法来表示依赖项。首先,它会发出网络请求以查看是否有新版本,这对于许多尝试脱机工作的开发人员来说都是一个问题。我相信它每天只检查一次,但它仍然是一个问题。更重要的是,它可能导致您的构建以不可预测的方式失败 - 如果发布新版本并导致编译错误或错误,那么为什么您的构建在昨天工作但今天开始失败可能是神秘的。