避免 gradle 缓存快照版本

Avoid gradle cache for the snapshot versions

我正在 Android Studio 中使用某些库的 SNAPSHOT 版本。

问题是 Gradle 似乎使用了这些库的 缓存版本 并且 没有重新下载新的更新版本 快照版本。

我试图在我的 gradle 脚本中使用类似的东西,但它不起作用。

dependencies {
    compile ('myGroupId:myArtifactId:X.Y.Z-SNAPSHOT'){
        changing=true
    }
}

唯一可行的解​​决方法是删除 ~/.gradle/caches 目录,然后在 Android Studio 中重新同步项目。 当然不是什么好办法。

我们如何使用快照版本?

也可以使用gradle参数--refresh-dependencies

The --refresh-dependencies option tells Gradle to ignore all cached entries for resolved modules and artifacts. A fresh resolve will be performed against all configured repositories, with dynamic versions recalculated, modules refreshed, and artifacts downloaded. ...


我为自己创建了一个名为 refresh 的新 gradle 运行 命令,它调用
./gradlew --refresh-dependencies clean

尝试将此添加到您的 gradle 脚本中:

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

更多信息: http://gradle.org/docs/current/dsl/org.gradle.api.artifacts.ResolutionStrategy.html