Как Gradle хранит загруженные файлы JAR в локальной файловой системе? Maven хранит их в .m2
каталоге USER_HOME
, но где Gradle хранит их? Я проверил там .gradle
папку, но увидел только скомпилированные скрипты.
236
Gradle кеширует артефакты в USER_HOME/.gradle
папке. Скомпилированные скрипты обычно находятся в .gradle
папке в папке вашего проекта.
Если вы не можете найти кеш, возможно, это потому, что вы еще не кэшировали никаких артефактов. Вы всегда можете увидеть, где Gradle кэшировал артефакты, с помощью простого скрипта:
apply plugin: 'java'
repositories{
mavenCentral()
}
dependencies{
compile 'com.google.guava:guava:12.0'
}
task showMeCache << {
configurations.compile.each { println it }
}
Теперь, если вы запустите gradle showMeCache
его, загрузите deps в кеш и напечатайте полный путь.
~/.gradle/caches/modules-2/files-2.1
.<<
устарел на Gradle 3.2 mrhaki.blogspot.com/2016/11/…На Mac, Linux и Windows, т. Е. На всех трех основных платформах, Gradle хранит зависимости по адресу:
источник
caches/modules-2/files-2.1
ответили на вопрос , в отличие от любого другого ответа здесь.cd %userprofile%\.gradle\caches\modules-2\files-2.1
- короткая команда, чтобы найти этот каталог в Windows.В ПК с Windows 10 он сохраняется по адресу:
источник
Если вы хотите, чтобы ваши файлы зависимостей находились в какой-то определенной папке, вы можете просто использовать
copy
для этого задачу. Например,источник
Папка локального хранилища Gradle:
Определенные зависимости будут загружены из удаленных репозиториев в локальную папку репозитория Gradle. Для каждого загруженного файла gradle создаст новую папку с именем md5 значения исходного файла (pom, jar, ..). Полный путь к файлу зависимости составляется из:
Если наша определенная зависимость:
Затем библиотека будет загружена в:
источник
Я на окнах,
Вы должны быть в состоянии найти зависимости внутри
$ USER_HOME.gradle \ кэширует \ артефакты-24 \ FileStore
источник
~/.gradle/caches/modules-2/files-2.1
.На самом деле расположение кэша зависит от
GRADLE_USER_HOME
значения переменной среды. По умолчанию он работает$USER_HOME/.gradle
на Unix-OS и%userprofile%.\gradle
Windows.Но если вы установите эту переменную, каталог кэша будет расположен по этому пути.
И в любом случае, вы должны покопаться,
caches\modules-2\files-2.1
чтобы найти зависимости.источник
Вы можете использовать аргумент gradle,
--project-cache-dir "/Users/whatever/.gradle/"
чтобы вызвать каталог кэша gradle.Таким образом, вы можете быть уверены, что знаете, какой каталог используется (а также создавать разные кэши для разных проектов).
источник
Многие ответы верны! Я хочу добавить, что вы можете легко найти ваше местоположение загрузки с
как описано в https://stackoverflow.com/a/54000767/4471199 .
Новые загруженные артефакты будут показаны в stdout:
В этом случае я использовал образ докера
gradle:5.6.2-jdk12
. Как видите, докер-контейнер использует в/tmp
качестве места загрузки.источник
В случае, если это проект Android Gradle - вы можете найти библиотеки Android в папке $ ANDROID_HOME / extras / android / m2repository
источник
В Android Studio выполните следующие действия, чтобы проверить загруженный файл jar.
источник
На моем компьютере с установленным плагином Buildship 2.0.2 в eclipse хранятся зависимости:
$ USER_HOME.gradle \ кэши \ модули-2 \ файлы-2.1
источник
Мне потребовалось время, чтобы понять это, отсюда и дополнительный ответ. Надеюсь, это поможет сэкономить время. Обратите внимание, что если вы работаете,
sudo gradle
зависимости могут отсутствовать в вашем домашнем каталоге, даже еслиsudo echo $HOME
возвращается/Users/<my-non-root-user>/
. На моем Mac Gradle кэшировал зависимости в/private/var/root/.gradle/caches/
.источник
Для моего случая я использовал репозиторий Ivy, и мои зависимости Gradle были сохранены в
~/.ivy2/
.источник
Я просто наткнулся на это во время поиска этого ответа. Если вы используете intellij, вы можете перейти к расположению файла, но, открыв внешнюю папку lib в проводнике проекта, щелкните правой кнопкой мыши на банке и выберите «Открыть настройки библиотеки».
источник