I am kicking the tires on Java 12 and noticed that in javac
the minimum target java level was increased to 1.7.
Execution failed for task ':com.foo:compileJava'.
> error: release version 6 not supported
Why do I want to compile to Java 6 you ask?
Even though my codebase requires a minimum java level of 1.7, I still want my kernel to be compiled at older java levels so the JVM can start up and I can output a nicer error message indicating Java 7+ must be used, instead of the more cryptic incompatible class version errors.
Looking ahead...
Java 6 is not too big of a concern, but my main concern is if Java only supports N-5 releases, by Java 14 (about a year from now) I will no longer be able to compile down to Java 8, which will probably still be a very popular runtime version.
I believe Maven can work around this sort of issue with toolchains, but does Gradle offer anything similar?
EDIT: I also noticed JEP 182, which is not approved yet, but if approved would mean only N-3 releases are supported.