diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/AbstractKotlinAndroidGradleTests.kt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/AbstractKotlinAndroidGradleTests.kt index a7bf583801c..9074011f5ed 100644 --- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/AbstractKotlinAndroidGradleTests.kt +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/AbstractKotlinAndroidGradleTests.kt @@ -867,21 +867,7 @@ fun getSomething() = 10 fun testDetectAndroidJava8() = with(Project("AndroidProject")) { setupWorkingDir() - val kotlinJvmTarget18Regex = Regex("Kotlin compiler args: .* -jvm-target 1.8") - - gradleBuildScript("Lib").appendText( - "\n" + """ - android.compileOptions { - sourceCompatibility JavaVersion.VERSION_1_6 - targetCompatibility JavaVersion.VERSION_1_6 - } - """.trimIndent() - ) - - build(":Lib:assembleDebug", "-Pkotlin.setJvmTargetFromAndroidCompileOptions=true") { - assertSuccessful() - assertNotContains(kotlinJvmTarget18Regex) - } + val kotlinJvmTarget16Regex = Regex("Kotlin compiler args: .* -jvm-target 1.6") gradleBuildScript("Lib").appendText( "\n" + """ @@ -892,14 +878,28 @@ fun getSomething() = 10 """.trimIndent() ) + build(":Lib:assembleDebug", "-Pkotlin.setJvmTargetFromAndroidCompileOptions=true") { + assertSuccessful() + assertNotContains(kotlinJvmTarget16Regex) + } + + gradleBuildScript("Lib").appendText( + "\n" + """ + android.compileOptions { + sourceCompatibility JavaVersion.VERSION_1_6 + targetCompatibility JavaVersion.VERSION_1_6 + } + """.trimIndent() + ) + build("clean", ":Lib:assembleDebug") { assertSuccessful() - assertNotContains(kotlinJvmTarget18Regex) + assertNotContains(kotlinJvmTarget16Regex) } build(":Lib:assembleDebug", "-Pkotlin.setJvmTargetFromAndroidCompileOptions=true") { assertSuccessful() - assertContainsRegex(kotlinJvmTarget18Regex) + assertContainsRegex(kotlinJvmTarget16Regex) } } } diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinPlugin.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinPlugin.kt index 2195f8c040f..1d56732bf87 100755 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinPlugin.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinPlugin.kt @@ -950,9 +950,9 @@ abstract class AbstractAndroidProjectHandler(private val kotlinConfigurationTool private fun applyAndroidJavaVersion(baseExtension: BaseExtension, kotlinOptions: KotlinJvmOptions) { val javaVersion = - listOf(baseExtension.compileOptions.sourceCompatibility, baseExtension.compileOptions.targetCompatibility).min()!! - if (javaVersion >= JavaVersion.VERSION_1_8) - kotlinOptions.jvmTarget = "1.8" + minOf(baseExtension.compileOptions.sourceCompatibility, baseExtension.compileOptions.targetCompatibility) + if (javaVersion == JavaVersion.VERSION_1_6) + kotlinOptions.jvmTarget = "1.6" } private fun preprocessVariant(