Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Move to OpenJDK-11 but compile in Java 8

I have an existing Spring boot App that i build through gradle . All these days I have been using JDK / JRE 8 and now I am trying to use JDK-11

So to check the Compatability, I am setting the JAVA_HOME to JDK-11 but trying to compile in Java 8 mode

I added the below block in my build.gradle

compileJava {
    targetCompatibility = '1.8'
}

and then I set JAVA_HOME explicitly set JAVA_HOME=C:\Users\arun\Desktop\jdk-11.0.1

and then execute gradlew clean build

But I am stopped with the below exception

> Configure project :
Build Version = build-182-ga03cf6c

> Task :compileJava FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':compileJava'.
> warning: source release 11 requires target release 11

How to point my JAVA_HOME to JDK-11 but still execute it in Java-8 mode ?

like image 620
Arun Avatar asked Jan 11 '19 13:01

Arun


2 Answers

I'd say :

sourceCompatibility = '1.8'
targetCompatibility = '1.8'

Because the default value of sourceCompatibility is the version of the current JVM in use.

source : https://docs.gradle.org/current/userguide/java_plugin.html

like image 97
Tristan Avatar answered Nov 20 '22 16:11

Tristan


you need to set the sourceCompatibility too.

See this post here Gradle, "sourceCompatibility" vs "targetCompatibility"?

like image 5
Rolf Avatar answered Nov 20 '22 17:11

Rolf