首页 文章

Gradle存储在本地文件系统上

提问于
浏览
188

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

14 回答

  • 0

    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下载到缓存并打印完整路径 .

  • 1

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

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

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

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

    在Windows 10 PC中,它保存在:

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

    我在窗户上,

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

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

  • 11

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

    • $ USER_HOME / .gradle / caches / modules-2 / files-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
  • 9

    您可以使用gradle参数 --project-cache-dir "/Users/whatever/.gradle/" 强制使用gradle缓存目录 .

    通过这种方式,您可以确定您知道正在使用的目录(以及为不同的项目创建不同的缓存)

  • 1

    如果它是Android gradle项目 - 您可以在$ ANDROID_HOME / extras / android / m2repository文件夹下找到android库

  • 7

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

  • 0

    实际上,缓存位置取决于 GRADLE_USER_HOME 环境变量值 . 默认情况下,在基于Unix-OS的情况下为 $USER_HOME/.gradle ,在Windows上为 %userprofile%.\gradle .
    但是,如果设置此变量,则缓存目录将位于此路径中 .

    无论如何,你应该深入研究 caches\modules-2\files-2.1 以找到依赖关系 .

  • 1

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

    • 将项目结构视图设置为"Project"

    • 在底部外部库部分可用,展开它 .

    • 在这里您可以看到下载的jar文件 .
      enter image description here

  • 0

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

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

  • 204

    对于我的情况,我使用的是Ivy存储库,我的Gradle依赖项存储在 ~/.ivy2/ 中 .

  • 3

    我在搜索这个答案时偶然发现了这个问题 . 如果您使用的是intellij,则可以导航到文件位置,但在项目浏览器中打开外部lib文件夹,右键单击jar,然后选择“打开库设置” .
    enter image description here

相关问题