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 в качестве места загрузки.