在哪种情况下,gradle 会将工件存储在目录 .m2
中以及在哪种情况下将它们存储在 gradle\caches
中?
我正在尝试解决我的问题,其中我在本地构建中有依赖项
最佳答案
只有当您将其声明为有效存储库时,Gradle 才会从您的本地 Maven 存储库中读取:
repositories {
mavenLocal()
}
只有当您发布工件并告诉它发布到本地 Maven 存储库时,Gradle 才会写入您的本地 Maven 存储库。
maven
插件,当 executing the task install
maven-publish
插件,当 executing the task publishToMavenLocal
Gradle 将对所有解析的依赖项使用自己的内部缓存,包括来自本地 maven 存储库的依赖项。
例如,如果您使用依赖项
org:foo:1.0
从您的 Maven 本地存储库中,元数据和工件将在第一次解析时复制到 Gradle 缓存中。从那时起,依赖项将从 Gradle 缓存中解析。但是,如果依赖项发生变化,例如使用
-SNAPSHOT
时版本,默认情况下,Gradle 缓存会将最后一个解析保留 24 小时。之后它将执行一个新的解析,在这个例子中再次点击本地 maven 存储库。见 the documentation for controlling that cache duration用于动态和/或变化的依赖项。
关于gradle - gradle 什么时候存储在 .m2 中,什么时候存储在缓存中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50196867/