我有一个Gradle项目,依赖于另一个Gradle项目。依赖项已发布到我们的内部Nexus服务器,并且可以很好地解析。
一旦依赖项被本地缓存,除非我传递 --refresh-dependencies 参数给 Gradle 命令(或手动从缓存中删除),否则无法刷新它。
在搜索了互联网之后,我发现有很多人都有同样的问题,建议将依赖标记为 changing(尽管这不是必须的,因为从名称 -SNAPSHOT 中也可以隐含),并添加以下内容:
configurations.all {
resolutionStrategy.cacheChangingModulesFor 0, 'seconds'
}
然而这对我不起作用,它总是使用缓存版本,直到gradle默认的24小时到期,然后重新下载。
有没有人知道我还缺少什么,或者如何诊断gradle正在做什么以及为什么它不去nexus下载新版本?
--refresh-dependencies
选项正是为了这个目的而存在的。 - Henrycompile('groupId:artifactId:X.X.X-SNAPSHOT'){ changing = true }
- Alpar