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 83893a870ed..9decdc4be63 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 @@ -1098,46 +1098,6 @@ fun getSomething() = 10 } } - @Test - fun testDetectAndroidJava8() = with(Project("AndroidProject")) { - setupWorkingDir() - - val kotlinJvmTarget16Regex = Regex("Kotlin compiler args: .* -jvm-target 1.6") - - gradleBuildScript("Lib").appendText( - "\n" + """ - android.compileOptions { - sourceCompatibility JavaVersion.VERSION_1_8 - targetCompatibility JavaVersion.VERSION_1_8 - } - """.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(kotlinJvmTarget16Regex) - } - - build(":Lib:assembleDebug", "-Pkotlin.setJvmTargetFromAndroidCompileOptions=true") { - assertSuccessful() - assertContainsRegex(kotlinJvmTarget16Regex) - } - } - @Test fun shouldAllowToApplyPluginWhenAndroidPluginIsMissing() { with(Project("simpleProject", minLogLevel = LogLevel.WARN)) { diff --git a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinPlugin.kt b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinPlugin.kt index 4c30e06e0e5..04690e3f531 100755 --- a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinPlugin.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinPlugin.kt @@ -6,8 +6,10 @@ package org.jetbrains.kotlin.gradle.plugin import com.android.build.gradle.* -import com.android.build.gradle.BasePlugin -import com.android.build.gradle.api.* +import com.android.build.gradle.api.AndroidSourceSet +import com.android.build.gradle.api.BaseVariant +import com.android.build.gradle.api.SourceKind +import com.android.build.gradle.api.UnitTestVariant import org.gradle.api.* import org.gradle.api.attributes.Category import org.gradle.api.attributes.Usage @@ -16,12 +18,16 @@ import org.gradle.api.file.Directory import org.gradle.api.file.FileCollection import org.gradle.api.file.SourceDirectorySet import org.gradle.api.logging.Logging -import org.gradle.api.plugins.* +import org.gradle.api.plugins.InvalidPluginException +import org.gradle.api.plugins.JavaPlugin +import org.gradle.api.plugins.JavaPluginConvention import org.gradle.api.provider.Provider import org.gradle.api.publish.PublishingExtension import org.gradle.api.publish.maven.MavenPom import org.gradle.api.publish.maven.MavenPublication -import org.gradle.api.tasks.* +import org.gradle.api.tasks.SourceSet +import org.gradle.api.tasks.TaskProvider +import org.gradle.api.tasks.Upload import org.gradle.api.tasks.compile.AbstractCompile import org.gradle.jvm.tasks.Jar import org.gradle.tooling.provider.model.ToolingModelBuilderRegistry @@ -743,16 +749,6 @@ abstract class AbstractAndroidProjectHandler(private val kotlinConfigurationTool val ext = project.extensions.getByName("android") as BaseExtension val kotlinOptions = KotlinJvmOptionsImpl() - project.whenEvaluated { - // TODO don't require the flag once there is an Android Gradle plugin build that supports desugaring of Long.hashCode and - // Boolean.hashCode. Instead, run conditionally, only with the AGP versions that play well with Kotlin bytecode for - // JVM target 1.8. - // See: KT-31027 - if (PropertiesProvider(project).setJvmTargetFromAndroidCompileOptions == true) { - applyAndroidJavaVersion(project.extensions.getByType(BaseExtension::class.java), kotlinOptions) - } - } - kotlinOptions.noJdk = true ext.addExtension(KOTLIN_OPTIONS_DSL_NAME, kotlinOptions) @@ -890,13 +886,6 @@ abstract class AbstractAndroidProjectHandler(private val kotlinConfigurationTool } } - private fun applyAndroidJavaVersion(baseExtension: BaseExtension, kotlinOptions: KotlinJvmOptions) { - val javaVersion = - minOf(baseExtension.compileOptions.sourceCompatibility, baseExtension.compileOptions.targetCompatibility) - if (javaVersion == JavaVersion.VERSION_1_6) - kotlinOptions.jvmTarget = "1.6" - } - private fun addAndroidUnitTestTasksAsDependenciesToAllTest(project: Project) { val allTestTaskName = project.kotlinTestRegistry.allTestsTaskName project.tasks.matching { it.name == allTestTaskName }.configureEach { task -> diff --git a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinProperties.kt b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinProperties.kt index 86843f5876c..04999dda8fb 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinProperties.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinProperties.kt @@ -141,9 +141,6 @@ internal class PropertiesProvider private constructor(private val project: Proje val ignorePluginLoadedInMultipleProjects: Boolean? get() = booleanProperty("kotlin.pluginLoadedInMultipleProjects.ignore") - val setJvmTargetFromAndroidCompileOptions: Boolean? - get() = booleanProperty("kotlin.setJvmTargetFromAndroidCompileOptions") - val keepAndroidBuildTypeAttribute: Boolean get() = booleanProperty("kotlin.android.buildTypeAttribute.keep") ?: false