Travis CI, caching dependencies

I’m trying to cache the dependencies for a private Travis CI repository, does Travis have some mechanism specific for gradle, or do I have to cache specific directories?

.travis.yml:

language: groovy
   jdk:
   - openjdk7
   env:
 - TERM=dumb
   before_install:
 - cd application
 - chmod +x gradlew
   script:
 - ./gradlew build

Relevant parts of last working build:

Downloading https://services.gradle.org/distributions/gradle-2.1-bin.zip
   ......................................................................................................................................................................................
   Unzipping /home/travis/.gradle/wrapper/dists/gradle-2.1-bin/2pk0g2l49n2sbne636fhtlet6a/gradle-2.1-bin.zip to /home/travis/.gradle/wrapper/dists/gradle-2.1-bin/2pk0g2l49n2sbne636fhtlet6a
   Set executable permissions for: /home/travis/.gradle/wrapper/dists/gradle-2.1-bin/2pk0g2l49n2sbne636fhtlet6a/gradle-2.1/bin/gradle
   Download https://jcenter.bintray.com/com/mycila/xmltool/xmltool/3.3/xmltool-3.3.pom
   ...

Would adding:

cache:

directories:

  • $HOME/.gradle

work? or perhaps:

cache:
   directories:
   - $HOME/.gradle/caches/modules-2/files-2.1

What parts of the gradle directory is safe to cache?

Travis doesn’t detect Gradle out of the box. We’ve requested them to do this.

In the meantime, you should add ‘$HOME/.gradle/caches/’ as a cache dir.

Cheers mate =)