From dbe31361bc111e83fbf1a8c9560f2b8394ae8938 Mon Sep 17 00:00:00 2001 From: Adam Pocock Date: Fri, 5 Feb 2021 14:55:34 -0500 Subject: [PATCH] Fix build.gradle so it always targets Java 8 class files. --- java/build.gradle | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/java/build.gradle b/java/build.gradle index 21af04353b..d519cdcded 100644 --- a/java/build.gradle +++ b/java/build.gradle @@ -78,6 +78,23 @@ spotless { compileJava { dependsOn spotlessJava options.compilerArgs += ["-h", "${project.buildDir}/headers/"] + if (!JavaVersion.current().isJava8()) { + // Ensures only methods present in Java 8 are used + options.compilerArgs.addAll(['--release', '8']) + // Gradle versions before 6.6 require that these flags are unset when using "-release" + java.sourceCompatibility = null + java.targetCompatibility = null + } +} + +compileTestJava { + if (!JavaVersion.current().isJava8()) { + // Ensures only methods present in Java 8 are used + options.compilerArgs.addAll(['--release', '8']) + // Gradle versions before 6.6 require that these flags are unset when using "-release" + java.sourceCompatibility = null + java.targetCompatibility = null + } } sourceSets.test {