Gradle:编译SNAPSHOT库

时间:2016-05-24 18:00:17

标签: android android-studio gradle

我有这个我想要使用的库,我可以安装一个版本,但开发人员发布了最近的SNAPSHOT版本,我怎么能编译它?

我尝试compile 'com.(...):1.4.0-SNAPSHOT没有结果?

1 个答案:

答案 0 :(得分:5)

由于SNAPSHOT是一个Maven概念,因此它不会被视为存储库中的任何特殊内容。

告诉Gradle检查依赖项的更新版本的最佳方法是将依赖项标记为更改。然后Gradle会每24小时检查一次更新,这可以使用 resolutionStrategy DSL进行配置。

在Gradle中覆盖默认模块缓存:

configurations.all {
    resolutionStrategy.cacheChangingModulesFor 0, 'seconds'
}

然后,latest.integration将适用于每个SNAPSHOT:

dependencies {
    compile ('projGroup:projName:latest.integration') { changing = true }
}

例如,在您的情况下, projGroup com.prolificinteractive ,而projName material-calendarview

dependencies {
    compile('com.prolificinteractive:material-calendarview:1.4.0-SNAPSHOT') { changing = true }
}

编辑:

另一个问题是在定义的 central 存储库中引入最新版本,此存储库实际上不包含-SNAPSHOT所在的SNAPSHOT存储库。因此,您应该在存储库URL中添加gradle repositories部分,以便下载上传的SNAPSHOT版本。

repositories {
    mavenCentral()
    mavenLocal()
    maven { url 'https://oss.sonatype.org/content/repositories/snapshots' }
}