Browse Source

Remove cast to KotlinJvmTarget for all targets of type jvm (#3592)

The new android multiplatform plugin will have type `jvm` but doesn't
inherit from the KotlinJvmTarget type, which makes the compose
multiplatform gradle plugin not useable with the new android gradle
plugin for multiplatforms builds.
pull/3624/head
Amr Afifiy 1 year ago committed by GitHub
parent
commit
8799277aab
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 7
      gradle-plugins/compose/src/main/kotlin/org/jetbrains/compose/desktop/preview/internal/configurePreview.kt

7
gradle-plugins/compose/src/main/kotlin/org/jetbrains/compose/desktop/preview/internal/configurePreview.kt

@ -6,18 +6,15 @@ import org.jetbrains.compose.desktop.application.internal.JvmApplicationRuntimeF
import org.jetbrains.compose.desktop.preview.tasks.AbstractConfigureDesktopPreviewTask
import org.jetbrains.compose.internal.*
import org.jetbrains.compose.internal.utils.uppercaseFirstChar
import org.jetbrains.kotlin.gradle.plugin.KotlinPlatformType
import org.jetbrains.kotlin.gradle.targets.jvm.KotlinJvmTarget
fun Project.initializePreview(desktopExtension: DesktopExtension) {
plugins.withId(KOTLIN_MPP_PLUGIN_ID) {
mppExt.targets.all { target ->
if (target.platformType == KotlinPlatformType.jvm) {
val runtimeFilesProvider = JvmApplicationRuntimeFilesProvider.FromKotlinMppTarget(target as KotlinJvmTarget)
mppExt.targets.withType(KotlinJvmTarget::class.java) { target ->
val runtimeFilesProvider = JvmApplicationRuntimeFilesProvider.FromKotlinMppTarget(target)
registerConfigurePreviewTask(project, runtimeFilesProvider, targetName = target.name)
}
}
}
plugins.withId(KOTLIN_JVM_PLUGIN_ID) {
val sourceSet = project.javaSourceSets.getByName("main")
val runtimeFilesProvider = JvmApplicationRuntimeFilesProvider.FromGradleSourceSet(sourceSet)

Loading…
Cancel
Save