Using JDK 8 in android



I am using retrolambda in my Android project. But it fails to build with following message.

Execution failed for task ‘:app:compileInternalDebugJavaWithJavac’.

When running gradle with java 5, 6 or 7, you must set the path to jdk8, either with property retrolambda.jdk or environment variable JAVA8_HOME

Please suggest me any solution. My whole CI experience is suffering because of this.


I also ran into the same issue, and I was able to fix it by adding the following configuration to the machine section of my circle.yml file:

        version: oraclejdk8

I believe that Circle CI builds use version 1.7.0_55 of the JDK by default (see this page:, so you need to explicitly tell it to use the Java 8 JDK in your circle.yml file (see above). Once I added this, my Android application - using retrolambda - built successfully.

Hope this helps!


How would you know the possible values for java version? Is there a list of values that we can use as a reference? Thanks


Ooops. It’s in the documentation, values will depend on the Ubuntu version you’re using.

I encountered a failed build should be a string

        version: oraclejdk8

to fix this issue, I enclosed oraclejdk8 with single quote (’)

        version: 'oraclejdk8'