diff --git a/conventions/src/main/kotlin/otel.java-conventions.gradle.kts b/conventions/src/main/kotlin/otel.java-conventions.gradle.kts index e3204b885e9f..2e77f7801560 100644 --- a/conventions/src/main/kotlin/otel.java-conventions.gradle.kts +++ b/conventions/src/main/kotlin/otel.java-conventions.gradle.kts @@ -1,4 +1,3 @@ -import com.gradle.enterprise.gradleplugin.testretry.retry import io.opentelemetry.instrumentation.gradle.OtelJavaExtension import org.gradle.api.tasks.testing.logging.TestExceptionFormat import java.time.Duration @@ -79,11 +78,6 @@ tasks.withType().configureEach { "-Werror" ) ) - val defaultJavaVersion = otelJava.maxJavaVersionSupported.getOrElse(DEFAULT_JAVA_VERSION).majorVersion.toInt() - if (Math.max(otelJava.minJavaVersionSupported.get().majorVersion.toInt(), defaultJavaVersion) >= 21) { - // new warning in jdk21 - compilerArgs.add("-Xlint:-this-escape") - } } encoding = "UTF-8" @@ -119,6 +113,12 @@ afterEvaluate { source = otelJava.minJavaVersionSupported.get().majorVersion } } + tasks.withType().configureEach { + if (javaCompiler.isPresent && javaCompiler.get().metadata.languageVersion.canCompileOrRun(21)) { + // new warning in jdk21 + options.compilerArgs.add("-Xlint:-this-escape") + } + } } evaluationDependsOn(":dependencyManagement")