gradle - gradle 什么时候存储在 .m2 中,什么时候存储在缓存中?
问题描述
在哪种情况下将 gradle 将工件存储在目录.m2
中,在哪种情况下将它们存储在gradle\caches
?
我正在尝试解决我的问题,其中我在本地构建中有依赖项
解决方案
仅当您将其声明为有效存储库时, Gradle 才会从本地 maven 存储库中读取:
repositories {
mavenLocal()
}
仅当您发布工件并告诉它发布到本地 maven 存储库时,Gradle 才会写入您的本地 maven 存储库。
- 如果您正在使用
maven
插件,则在执行任务时install
- 如果您正在使用
maven-publish
插件,则在执行任务时publishToMavenLocal
Gradle 将为所有已解析的依赖项使用自己的内部缓存,包括来自本地 maven 存储库的依赖项。
例如,如果您使用org:foo:1.0
来自 maven 本地存储库的依赖项,则元数据和工件将在第一次解析时复制到 Gradle 缓存。从那时起,依赖关系将从 Gradle 缓存中解决。
但是,如果依赖项发生变化,例如在使用某个-SNAPSHOT
版本时,Gradle 缓存将默认将最后一个解析保留 24 小时。之后它将执行新的解析,在本例中再次访问本地 maven 存储库。
请参阅文档以控制动态和/或更改依赖项的缓存持续时间。
推荐阅读
- java - 合并排序的奇怪运行时间
- php - 如何优化两个表之间的 Laravel 查询?
- salesforce - 一个docusign自定义Lightining Button中有多个收件人?
- r - 对于 R 中的 4x6 矩阵 m,m[1:4,] 和 m[,1:6] 之间有什么区别吗?
- telegram-bot - 通过 ThingsBoard 规则引擎从 Telegram 获取一些数据
- c - 带有 C 的 Postgres 导致非零退出代码
- java - 请求类的单元测试
- reactjs - React deep 只比较一个道具
- python - 将 Google Sheet 导出到 Open XML Document 并使用 Python 写入磁盘
- ruby - rbenv install --list 未显示 ubuntu 18.04 LTS (ruby 2.7.1) 上的所有版本