Android Studio:快照依赖项无法正确更新

Nat*_*ner 12 android sonatype gradle android-studio

我正在使用Android Studio 8.9

我有一个build.gradle,定义了以下依赖项:

compile ('my.program.commons:my-program-commons:0.0.2-SNAPSHOT@jar')
Run Code Online (Sandbox Code Playgroud)

此依赖项存储在私有Sonatype nexus存储库中.

当我在my.program.commons代码中进行更改时,我上传到nexus.

问题是,当我尝试编译新的SNAPSHOT android工作室将无法获取更改.

从命令行运行时,gradle将成功构建 - 但Android Studio将无法识别新文件.

如果我做一个版本勾选 - 比如从0.0.2-SNAPSHOT到0.0.3-SNAPSHOT Android Studio将理解新版本和下载,一切正常.

我不想在每一次改变都做一个小版本.

cod*_*zjx 12

在我的情况下,使用changing = true不适合我.但配置缓存更改模块解决了我的问题.下面的示例代码,添加build.gradle文件:

configurations.all {
    // Don't cache changing modules at all.
    resolutionStrategy.cacheChangingModulesFor 0, 'seconds'
}
Run Code Online (Sandbox Code Playgroud)

请参阅:https://docs.gradle.org/current/userguide/dependency_management.html


bon*_*ond 10

您还可以设置一个名为"更改"的标志,该标志将触发Gradle始终提取最新信息,例如:

compile ('my.program.commons:my-program-commons:0.0.2-SNAPSHOT@jar') {
 changing = true;
}
Run Code Online (Sandbox Code Playgroud)


rse*_*don 6

您需要配置缓存持续时间,默认情况下,gradle不会在24小时内查找更新:

http://www.gradle.org/docs/current/userguide/dependency_management.html#sec:controlling_caching