Gradle хранить в локальной файловой системе
Как Gradle хранит загруженные файлы jar в локальной файловой системе? Maven хранит их в каталоге .m2
в разделе USER_HOME
, но где Gradle хранит их? Я проверил там папку .gradle
, но увидел только скомпилированные скрипты.
Ответы
Ответ 1
Gradle кэширует артефакты в папке USER_HOME/.gradle
. Скомпилированные сценарии обычно находятся в папке .gradle
в папке проекта.
Если вы не можете найти кеш, возможно, потому, что вы еще не кэшировали артефакты. Вы всегда можете увидеть, где Gradle имеет кешированные артефакты с простым script:
apply plugin: 'java'
repositories{
mavenCentral()
}
dependencies{
compile 'com.google.guava:guava:12.0'
}
task showMeCache << {
configurations.compile.each { println it }
}
Теперь, если вы запустите gradle showMeCache
, он должен загрузить отпечатки в кеш и распечатать полный путь.
Ответ 2
В Mac, Linux и Windows, т.е. на всех трех основных платформах, Gradle хранит зависимости по адресу:
~/.gradle/caches/modules-2/files-2.1
Ответ 3
В Windows 10 ПК сохраняется:
C:\Users\<user>\.gradle\caches\modules-2\files-2.1\
Ответ 4
Если вы хотите, чтобы ваши файлы зависимостей находились в определенной папке, вы можете просто использовать для нее задачу copy
. Например,
task copyDepJars(type: Copy) {
from configurations.compile
into 'C:\\Users\\athakur\\Desktop\\lib'
}
Ответ 5
Gradle папка локального репозитория:
- $USER_HOME/.gradle/кэширует/модули-2/файлы-2,1
Определенные зависимости будут загружаться из удаленных репозиториев в папку локального репозитория gradle. Для каждого загруженного файла gradle будет создана новая папка с именем md5 исходного файла (pom, jar,..). Полный путь для файла зависимости состоит из:
- groupid + artifactid + version + FILE_MD5_VALUE + FILE_NAME
Если наша определяемая зависимость:
- compile 'org.springframework: spring -jdbc: 4.3.4.RELEASE'
Затем библиотека будет загружена в:
- /$USER_HOME/.gradle/кэши/модули-2/файлы-2.1/org.springframework/spring -jdbc/4.3.4.RELEASE/ 42175d194cf6aa7c716c0887f30255e5c0a5262c/spring -jdbc -4.3.4.RELEASE.jar
Ответ 6
Я на окнах,
Вы можете найти зависимости внутри
$USER_HOME.gradle\кэшей\артефакты-24\FileStore
Ответ 7
Вы можете использовать аргумент gradle --project-cache-dir "/Users/whatever/.gradle/"
для принудительного запуска каталога кэширования gradle.
Таким образом, вы можете быть уверены, что знаете, какой каталог используется (а также создавать разные кеши для разных проектов).
Ответ 8
Фактически расположение кэша зависит от значения переменной среды GRADLE_USER_HOME
.
По умолчанию это $USER_HOME/.gradle
для Unix-OS и %userprofile%.\gradle
для Windows.
Но если вы установите эту переменную, каталог кэша будет расположен по этому пути.
И в любом случае, вы должны покопаться в caches\modules-2\files-2.1
, чтобы найти зависимости.
Ответ 9
В случае, если это проект Android gradle, вы можете найти библиотеки андроида под своей $ANDROID_HOME/extras/android/m2repository папкой
Ответ 10
В студии android выполните следующие шаги, чтобы проверить загруженный jar файл gradle.
- Установить представление структуры проекта в "Проект"
- Внизу доступна секция внешней библиотеки. Разверните ее.
- Здесь вы можете увидеть загруженные файлы jar.
![введите описание изображения здесь]()
Ответ 11
Мне потребовалось некоторое время, чтобы понять это, следовательно, дополнительный ответ. Надеюсь, это может спасти людей. Обратите внимание, что если вы используете sudo gradle
, то зависимости могут не быть в вашем домашнем каталоге, даже если sudo echo $HOME
возвращает /Users/<my-non-root-user>/
. На моем Mac Gradle выполнялось кэширование зависимостей в /private/var/root/.gradle/caches/
.
Ответ 12
На моей машине Windows с плагином "Buildship 2.0.2", установленным в eclipse, хранятся зависимости:
$USER_HOME.gradle\кэшей\модули-2\файлы-2,1
Ответ 13
В моем случае я использовал репозиторий Ivy, а мои зависимости Gradle хранились в ~/.ivy2/
.
Ответ 14
Я просто наткнулся на это во время поиска этого ответа. Если вы используете intellij, вы можете перейти к расположению файла, но, открыв внешнюю папку lib в проводнике проекта, щелкните правой кнопкой мыши на банке и выберите "Открыть настройки библиотеки". ![enter image description here]()
Ответ 15
Многие ответы верны!
Я хочу добавить, что вы можете легко найти свое местоположение загрузки с помощью
gradle --info build
как описано в fooobar.com/info/17812818/....
Новые загруженные артефакты будут показаны в stdout:
Downloading https://plugins.gradle.org/m2/org/springframework/boot/spring-boot-parent/2.1.7.RELEASE/spring-boot-parent-2.1.7.RELEASE.pom to /tmp/gradle_download551283009937119777bin
В этом случае я использовал изображение докера gradle:5.6.2-jdk12
.
Как вы можете видеть, док-контейнер использует /tmp
в качестве места загрузки.