gradle何时存储在.m2中,何时存储在缓存中?

gradle何时存储在.m2中,何时存储在缓存中?,gradle,Gradle,在哪种情况下,gradle会将工件存储在目录.m2中,在哪种情况下,它会将工件存储在gradle\caches中 我正试图解决我的问题,即我的本地构建中存在依赖关系,只有当您将本地maven存储库声明为有效存储库时,Gradle才会从中读取: repositories { mavenLocal() } Gradle将只在您发布工件并告诉它发布到本地maven repo时写入本地maven存储库 如果您正在使用maven插件,则 如果您正在使用maven publish插件,则 Gr

在哪种情况下,gradle会将工件存储在目录
.m2
中,在哪种情况下,它会将工件存储在
gradle\caches

我正试图解决我的问题,即我的本地构建中存在依赖关系,只有当您将本地maven存储库声明为有效存储库时,Gradle才会从中读取:

repositories {
    mavenLocal()
}
Gradle将只在您发布工件并告诉它发布到本地maven repo时写入本地maven存储库

  • 如果您正在使用
    maven
    插件,则
  • 如果您正在使用
    maven publish
    插件,则
Gradle将对所有已解析的依赖项使用自己的内部缓存,包括来自本地maven存储库的依赖项

例如,如果使用maven本地存储库中的依赖项
org:foo:1.0
,元数据和工件将在第一次解析时复制到Gradle缓存。从那时起,依赖关系将从Gradle缓存中解决

但是,如果相关性正在更改,例如在使用
-SNAPSHOT
版本时,Gradle缓存默认情况下会将最后一个已解析的保留24小时。之后,它将执行一个新的解析,在本例中再次访问本地maven存储库

有关动态和/或更改的依赖项,请参阅