Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Gradle store on local file system

Tags:

gradle

People also ask

Where does Gradle store dependencies locally?

The Gradle dependency cache consists of two storage types located under GRADLE_USER_HOME/caches : A file-based store of downloaded artifacts, including binaries like jars as well as raw downloaded meta-data like POM files and Ivy files.

Where is Gradle cache stored?

The default location is the Gradle user home directory that points to $USER_HOME/. gradle/caches.

Where does Gradle store build jar?

The Jar is created under the $project/build/libs/ folder.

Where do Gradle build files go?

gradle file is located inside your project folder under app/build.


On Mac, Linux and Windows i.e. on all 3 of the major platforms, Gradle stores dependencies at:

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

Gradle caches artifacts in USER_HOME/.gradle folder. The compiled scripts are usually in the .gradle folder in your project folder.

If you can't find the cache, maybe it's because you have not cached any artifacts yet. You can always see where Gradle has cached artifacts with a simple script:

apply plugin: 'java'

repositories {
    mavenCentral()
}

dependencies {
    compile 'com.google.guava:guava:12.0'
}

task showMeCache doLast() {
    configurations.compileClasspath.each { println it }
}

Now if you run gradle showMeCache it should download the dependencies into the cache and print the full path.


In Windows 10 PC, it is saved at:

C:\Users\%USERNAME%\.gradle\caches\modules-2\files-2.1\

Gradle's local repository folder is:

  • $USER_HOME/.gradle/caches/modules-2/files-2.1

Defined dependencies will be loaded from remote repositories into gradle's local repository folder. For each loaded file, gradle will be create a new folder named with md5 value of the original file (pom,jar,..). Full path for the dependency file is made up from :

  • groupid + artifactid + version + FILE_MD5_VALUE + FILE_NAME

If our defined dependency is:

  • compile 'org.springframework:spring-jdbc:4.3.4.RELEASE'

Then the library will be loaded into :

  • /$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

If you want your dependency files to be in some specific folder you can simply use a copy task for it. For Eg.

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

In fact the cache location depends on the GRADLE_USER_HOME environment variable value. By default, it is $USER_HOME/.gradle on Unix-OS based and %userprofile%.\gradle on Windows.
But if you set this variable, the cache directory would be located from this path.

And whatever the case, you should dig into caches\modules-2\files-2.1 to find the dependencies.


I am on windows,

You should be able find the dependencies inside

$USER_HOME.gradle\caches\artifacts-24\filestore