Gradle может использовать зависимости в разных макетах, включая Maven, Ivy, Flat структуры каталогов и абсолютные местоположения файлов. Так что он не всегда использует репозиторий Maven, как вы говорите.
Когда он загружает внешние зависимости, он кэширует их в $HOME/.gradle/caches/modules-2
. Отчасти это и есть то, о чем .m2
, но Gradle-1 - это просто кеш, и вещи будут стерты из него после того, как какое-то время не использовались.
Вы также не должны использовать кеш Gradleкаталог как локальный репозиторий для совместного использования версий SNAPSHOT между проектами во время разработки, как вы это сделали бы с .m2
. Если вам нужно, Gradle может работать с локальным .m2
хранилищем. Просто объявите:
repositories {
mavenLocal()
}
И вы можете использовать и публиковать артефакты в локальной папке .m2
, как это делал бы Maven.
Существуют и другие способы получения и использования локальных артефактов. в Gradle, включая мультипроекты и составные сборки , которые иногда лучше подходят, чем проходить через репозиторий .m2
.