import org.jetbrains.kotlin.gradle.tasks.KotlinCompile plugins { kotlin("multiplatform") id("org.jetbrains.kotlin.plugin.compose") id("org.jetbrains.compose") } version = "1.0-SNAPSHOT" repositories { mavenLocal() google() mavenCentral() maven("https://maven.pkg.jetbrains.space/public/p/compose/dev") } kotlin { jvm("desktop") macosX64 { binaries { executable { entryPoint = "main" freeCompilerArgs += listOf( "-linker-option", "-framework", "-linker-option", "Metal" ) } } } macosArm64 { binaries { executable { entryPoint = "main" freeCompilerArgs += listOf( "-linker-option", "-framework", "-linker-option", "Metal" ) } } } wasmJs { browser() binaries.executable() } sourceSets { val commonMain by getting { dependencies { implementation(compose.ui) implementation(compose.foundation) implementation(compose.material) implementation(compose.runtime) @OptIn(org.jetbrains.compose.ExperimentalComposeLibrary::class) implementation(compose.components.resources) } } val desktopMain by getting { dependencies { implementation(compose.desktop.currentOs) runtimeOnly("org.jetbrains.kotlinx:kotlinx-coroutines-swing:1.7.1") } } val nativeMain by creating { dependsOn(commonMain) } val macosMain by creating { dependsOn(nativeMain) } val macosX64Main by getting { dependsOn(macosMain) } val macosArm64Main by getting { dependsOn(macosMain) } } } compose.desktop { application { mainClass = "Main_desktopKt" } } tasks.withType { kotlinOptions.jvmTarget = "11" }