Gradle存储在本地文件系统上

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

Gradle在USER_HOME/.gradle文件夹中caching工件。 编译的脚本通常位于项目文件夹中的.gradle文件夹中。

如果你找不到caching,也许是因为你还没有caching任何工件。 您可以随时通过一个简单的脚本查看Gradle在哪里caching了工件:

 apply plugin: 'java' repositories{ mavenCentral() } dependencies{ compile 'com.google.guava:guava:12.0' } task showMeCache << { configurations.compile.each { println it } } 

现在,如果运行gradle showMeCache它应该将这个deps下载到caching中并打印完整的path。

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

 ~/.gradle/caches/modules-2/files-2.1 

如果你想要你的依赖文件在一些特定的文件夹,你可以简单地使用它的copy任务。 例如。

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

我在窗户上,

你应该能够find里面的依赖关系

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

如果它是一个Android gradle项目 – 你可以在你的$ ANDROID_HOME / extras / android / m2repository文件夹下面findandroid库

在android studio中,执行以下步骤来检查gradle下载的jar文件。

  1. 将项目结构视图设置为“项目”
  2. 在底部的外部库部分可用,展开它。
  3. 在这里你可以看到下载的jar文件。 在这里输入图像说明

在我的Windows机器上安装了Eclipse的“Buildship 2.0.2”插件,存储依赖:

$ USER_HOME.gradle \caching\模块-2 \文件-2.1

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

  • $ USER_HOME / .gradle /caching/模块-2 /文件 – 2.1

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

  • groupid + artifactid +版本+ 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

对于我的情况,我使用的是常青藤资源库,我的Gradle依赖关系存储在~/.ivy2/

我花了一段时间才意识到这一点,因此有额外的答案。 希望它可以节省时间。 请注意,如果您正在运行sudo gradle则依赖项可能不在您的主目录中,即使sudo echo $HOME返回/Users/<my-non-root-user>/ 。 在我的Mac上,Gradle在/private/var/root/.gradle/caches/caching依赖关系。

在Windows 10 PC中,它保存在:

 C:\Users\<user>\.gradle\caches\modules-2\files-2.1\