Fix toolchain is not applied for modules with 'java' plugin.

Use common base java plugin for configuration action: 'java-base'.

^KT-46972 Fixed
This commit is contained in:
Yahor Berdnikau
2021-07-05 23:15:44 +02:00
parent 113632c49c
commit c3a3e99724
+7 -3
View File
@@ -77,22 +77,26 @@ fun Project.configureJvmToolchain(
fun Project.configureJavaOnlyToolchain( fun Project.configureJavaOnlyToolchain(
jdkVersion: JdkMajorVersion jdkVersion: JdkMajorVersion
) { ) {
plugins.withId("java-library") { plugins.withId("java-base") {
val javaExtension = extensions.getByType<JavaPluginExtension>() val javaExtension = extensions.getByType<JavaPluginExtension>()
if (shouldOverrideObsoleteJdk(jdkVersion)) { if (shouldOverrideObsoleteJdk(jdkVersion)) {
javaExtension.toolchain.languageVersion.set( javaExtension.toolchain {
languageVersion.set(
JavaLanguageVersion.of(jdkVersion.overrideMajorVersion!!) JavaLanguageVersion.of(jdkVersion.overrideMajorVersion!!)
) )
}
tasks.withType<JavaCompile>().configureEach { tasks.withType<JavaCompile>().configureEach {
targetCompatibility = jdkVersion.targetName targetCompatibility = jdkVersion.targetName
sourceCompatibility = jdkVersion.targetName sourceCompatibility = jdkVersion.targetName
} }
} else { } else {
javaExtension.toolchain.languageVersion.set( javaExtension.toolchain {
languageVersion.set(
JavaLanguageVersion.of(jdkVersion.majorVersion) JavaLanguageVersion.of(jdkVersion.majorVersion)
) )
} }
} }
}
} }
fun KotlinCompile.configureTaskToolchain( fun KotlinCompile.configureTaskToolchain(