Gradle存储在本地文件系统上

man*_*111 210 gradle

Gradle如何在本地文件系统上存储下载的jar文件?Maven将它们存储在.m2目录下USER_HOME,但是Gradle存储在哪里?我检查了.gradle那里的文件夹,但只看到了编译过的脚本.

Him*_*wal 238

在Mac,Linux和Windows上,即在所有3个主要平台上,Gradle将依赖关系存储在:

~/.gradle/caches/modules-2/files-2.1
Run Code Online (Sandbox Code Playgroud)

  • 感谢您使用`caches/modules-2/files-2.1`回答问题,这与其他答案不同. (49认同)
  • 为什么 `modules-2\files-2.1` 有任何逻辑原因吗? (3认同)
  • `cd %userprofile%\.gradle\caches\modules-2\files-2.1` — 用于在 Windows 上定位到此目录的简短命令。 (2认同)

rod*_*ion 210

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 }
}
Run Code Online (Sandbox Code Playgroud)

现在如果你运行gradle showMeCache它应该将deps下载到缓存并打印完整路径.

  • 在我的Mac for Gradle 2.4上,它(当前)位于`〜/ .gradle/caches/modules-2/files-2.1`中. (55认同)
  • 在Gradle 3.2上不推荐使用左移运算符`&lt;&lt;`http://mrhaki.blogspot.com/2016/11/gradle-goodness-replacing-operator-for.html (2认同)

Ani*_*kur 13

如果您希望您的依赖项文件位于某个特定文件夹中,则只需使用该copy任务即可.对于Eg.

task copyDepJars(type: Copy) {
  from configurations.compile
  into 'C:\\Users\\athakur\\Desktop\\lib'
}
Run Code Online (Sandbox Code Playgroud)


Has*_*sef 13

在Windows 10 PC中,它保存在:

C:\Users\<user>\.gradle\caches\modules-2\files-2.1\
Run Code Online (Sandbox Code Playgroud)

  • 我可以强制将该路径更改为其他位置吗? (3认同)

dav*_*xxx 13

实际上缓存位置取决于GRADLE_USER_HOME环境变量值。默认情况下,它$USER_HOME/.gradle基于 Unix-OS 和%userprofile%.\gradleWindows。
但是如果你设置这个变量,缓存目录就会从这个路径定位。

无论如何,您应该深入研究caches\modules-2\files-2.1以找到依赖项。


nix*_*nix 10

Gradle的本地存储库文件夹是:

  • $ USER_HOME/.gradle /缓存/模块-2 /文件 - 2.1

定义的依赖项将从远程存储库加载到gradle的本地存储库文件夹中.对于每个加载的文件,gradle将创建一个以原始文件(pom,jar,..)的md5值命名的新文件夹.依赖项文件的完整路径由以下内容组成:

  • groupid + artifactid + version + FILE_MD5_VALUE + FILE_NAME

如果我们定义的依赖是:

  • 编译'org.springframework:spring-jdbc:4.3.4.RELEASE'

然后该库将被加载到:

  • /$USER_HOME/.gradle/caches/modules-2/files-2.1/org.springframework/spring-jdbc/4.3.4.RELEASE/ 42175d194cf6aa7c716c0887f30255e5c0a5262c /spring-jdbc-4.3.4.RELEASE.jar

  • MD5 已弃用,现在使用 SHA1 值 (2认同)

mek*_*oke 7

我在窗户上,

你应该能够在里面找到依赖项

$ USER_HOME.gradle \缓存\文物-24 \文件存储

  • 在我的Mac for Gradle 2.4上,它(当前)位于`〜/ .gradle/caches/modules-2/files-2.1`中. (6认同)

RoB*_*ToZ 5

很多答案都对!我想补充一点,您可以轻松找到您的下载位置

gradle --info build
Run Code Online (Sandbox Code Playgroud)

/sf/answers/3780053721/ 中所述

新下载的工件将显示在标准输出中:

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
Run Code Online (Sandbox Code Playgroud)

在这种情况下,我使用了 docker image gradle:5.6.2-jdk12。如您所见,docker 容器/tmp用作下载位置。


归档时间:

查看次数:

134625 次

最近记录:

6 年,3 月 前