diff --git a/build.gradle b/build.gradle index e4d6a16f8f..8070d9db82 100644 --- a/build.gradle +++ b/build.gradle @@ -49,11 +49,15 @@ ext { modernJavaVersion = 25 } +def buildJavaMajorVersion = (project.findProperty('javaVersion') ?: ext.modernJavaVersion).toString().toInteger() +def buildJavaLanguageVersion = JavaLanguageVersion.of(buildJavaMajorVersion) +def buildJavaVersion = JavaVersion.toVersion(buildJavaMajorVersion.toString()) + java { - sourceCompatibility = JavaVersion.VERSION_25 - targetCompatibility = JavaVersion.VERSION_25 + sourceCompatibility = buildJavaVersion + targetCompatibility = buildJavaVersion toolchain { - languageVersion = JavaLanguageVersion.of(project.findProperty('javaVersion')?.toString() ?: '25') + languageVersion = buildJavaLanguageVersion } } @@ -174,10 +178,10 @@ subprojects { apply from: rootProject.file('gradle/spotless.gradle') java { - sourceCompatibility = JavaVersion.VERSION_25 - targetCompatibility = JavaVersion.VERSION_25 + sourceCompatibility = buildJavaVersion + targetCompatibility = buildJavaVersion toolchain { - languageVersion = JavaLanguageVersion.of(25) + languageVersion = buildJavaLanguageVersion } } @@ -272,7 +276,7 @@ subprojects { tasks.withType(JavaCompile).configureEach { options.encoding = "UTF-8" - options.release = rootProject.ext.modernJavaVersion + options.release = buildJavaMajorVersion if (!project.hasProperty("noSpotless")) { dependsOn "spotlessApply" } @@ -667,10 +671,14 @@ tasks.register('compileRestartHelper', JavaCompile) { source = fileTree(dir: 'scripts', include: 'RestartHelper.java') classpath = files() destinationDirectory = layout.buildDirectory.dir("restart-helper-classes") - def restartMajorVersion = project.ext.modernJavaVersion + def restartMajorVersion = buildJavaMajorVersion + def restartLanguageVersion = JavaLanguageVersion.of(restartMajorVersion) def restartCompatibility = JavaVersion.toVersion(restartMajorVersion.toString()) sourceCompatibility = restartCompatibility targetCompatibility = restartCompatibility + javaCompiler = javaToolchains.compilerFor { + languageVersion = restartLanguageVersion + } options.release.set(restartMajorVersion) }