Gradle不会更新快照依赖项

Dav*_*ton 6 nexus gradle

我有一个gradle项目,它依赖于另一个gradle项目.依赖关系正在发布到我们内部的nexus服务器,可以很好地解决.

一旦在本地缓存了依赖项,我就无法刷新它,除非我将--refresh-dependencies传递给gradle命令(或从缓存中手动删除它).

在互联网上搜索后,我发现很多人都有同样的问题,建议将依赖关系标记为更改(虽然这不是严格必要的,因为它是从名称-SNAPSHOT隐含的)并添加:

configurations.all {
    resolutionStrategy.cacheChangingModulesFor 0, 'seconds'
}
Run Code Online (Sandbox Code Playgroud)

但是这对我不起作用,它将始终使用缓存版本,直到gradle默认24小时为止,然后它将重新下载它.

有没有人知道我可能缺少什么,或者我如何诊断gradle正在做什么以及为什么它不会下载新版本的nexus?

Dav*_*ton 13

经过一些试验和错误后,我发现该功能未按预期工作的原因是因为我们使用的是该spring-boot插件.该spring-boot插件使用自己的依赖管理插件,它有自己的配置用于更改模块:

dependencyManagement {
    resolutionStrategy {
        cacheChangingModulesFor 0, 'seconds'
    }
}
Run Code Online (Sandbox Code Playgroud)

将此代码段添加到gradle文件会强制更改模块以便始终下载.