Stop using sourceCompatibility and targetCompatibility

Clayton Walker - Jan 7 '22 - - Dev Community

And start using --release. As of JEP-247 released in java 9, the flag will allow you to compile for older releases of java without worrying about the dreaded NoSuchMethodError.

Stop talking and show me the code!

Gradle

tasks.withType(JavaCompile) {
    options.release = 8
}
Enter fullscreen mode Exit fullscreen mode

Gradle (kts)

tasks.withType<JavaCompile> {
    options.release.set(8)
}
Enter fullscreen mode Exit fullscreen mode

Maven (xml)

<configuration>
    <release>8</release>
</configuration>
Enter fullscreen mode Exit fullscreen mode
. . . . . .