Форум для тех, кто программирует под Android
Anonymous
Ошибки отображаются в общих файлах commainMain с многоплатформенным проектом Kotlin.
Сообщение
Anonymous » 27 июн 2024, 15:01
Я новичок в Kotlin, Compose и Kotlin-Multiplatform. Я пытаюсь запустить проект compose-webview-multiplatform для отображения веб-просмотра. Во всех файлах kotlin в общей папке commanMain отображаются ошибки с различными компонентами, такими как @composable, NavHost и т. д. Я могу собрать и запустить приложение. Ошибки сборки не отображаются.
Код: Выделить всё
plugins {
kotlin("multiplatform")
kotlin("plugin.serialization")
id("org.jetbrains.compose")
id("com.android.library")
id("org.jetbrains.kotlin.plugin.atomicfu")
}
@OptIn(org.jetbrains.kotlin.gradle.ExperimentalKotlinGradlePluginApi::class)
kotlin {
targetHierarchy.default()
androidTarget {
compilations.all {
kotlinOptions {
jvmTarget = "17"
}
}
}
jvm("desktop")
listOf(
iosX64(),
iosArm64(),
iosSimulatorArm64(),
).forEach {
it.binaries.framework {
baseName = "shared"
}
}
sourceSets {
val coroutinesVersion = extra["coroutines.version"] as String
val voyagerVersion = "1.0.0-rc10"
val commonMain by getting {
dependencies {
implementation(compose.runtime)
implementation(compose.foundation)
implementation(compose.material)
@OptIn(org.jetbrains.compose.ExperimentalComposeLibrary::class)
implementation(compose.components.resources)
implementation("co.touchlab:kermit:2.0.3")
implementation("cafe.adriel.voyager:voyager-navigator:$voyagerVersion")
implementation("cafe.adriel.voyager:voyager-tab-navigator:$voyagerVersion")
api(project(":webview"))
implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:1.6.0")
implementation("org.jetbrains.kotlinx:atomicfu:0.23.2")
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:$coroutinesVersion")
implementation("org.jetbrains.androidx.navigation:navigation-compose:2.7.0-alpha03")
}
}
val androidMain by getting {
dependencies {
api("androidx.activity:activity-compose:1.8.2")
api("androidx.appcompat:appcompat:1.6.1")
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-android:$coroutinesVersion")
}
}
val desktopMain by getting {
dependencies {
implementation(compose.desktop.common)
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-swing:$coroutinesVersion")
}
}
val commonTest by getting {
dependencies {
implementation(kotlin("test"))
}
}
}
task("testClasses")
}
android {
namespace = "com.kevinnzou.sample"
compileSdk = 34
sourceSets["main"].manifest.srcFile("src/androidMain/AndroidManifest.xml")
sourceSets["main"].res.srcDirs("src/androidMain/res")
sourceSets["main"].resources.srcDirs("src/commonMain/resources")
defaultConfig {
minSdk = 21
}
compileOptions {
sourceCompatibility = JavaVersion.VERSION_17
targetCompatibility = JavaVersion.VERSION_17
}
kotlin {
jvmToolchain(17)
}
}
Скриншот местоположения JDK
Подробнее здесь:
https://stackoverflow.com/questions/786 ... rm-project
1719489672
Anonymous
Я новичок в Kotlin, Compose и Kotlin-Multiplatform. Я пытаюсь запустить проект compose-webview-multiplatform для отображения веб-просмотра. Во всех файлах kotlin в общей папке commanMain отображаются ошибки с различными компонентами, такими как @composable, NavHost и т. д. Я могу собрать и запустить приложение. Ошибки сборки не отображаются. [code]plugins { kotlin("multiplatform") kotlin("plugin.serialization") id("org.jetbrains.compose") id("com.android.library") id("org.jetbrains.kotlin.plugin.atomicfu") } @OptIn(org.jetbrains.kotlin.gradle.ExperimentalKotlinGradlePluginApi::class) kotlin { targetHierarchy.default() androidTarget { compilations.all { kotlinOptions { jvmTarget = "17" } } } jvm("desktop") listOf( iosX64(), iosArm64(), iosSimulatorArm64(), ).forEach { it.binaries.framework { baseName = "shared" } } sourceSets { val coroutinesVersion = extra["coroutines.version"] as String val voyagerVersion = "1.0.0-rc10" val commonMain by getting { dependencies { implementation(compose.runtime) implementation(compose.foundation) implementation(compose.material) @OptIn(org.jetbrains.compose.ExperimentalComposeLibrary::class) implementation(compose.components.resources) implementation("co.touchlab:kermit:2.0.3") implementation("cafe.adriel.voyager:voyager-navigator:$voyagerVersion") implementation("cafe.adriel.voyager:voyager-tab-navigator:$voyagerVersion") api(project(":webview")) implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:1.6.0") implementation("org.jetbrains.kotlinx:atomicfu:0.23.2") implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:$coroutinesVersion") implementation("org.jetbrains.androidx.navigation:navigation-compose:2.7.0-alpha03") } } val androidMain by getting { dependencies { api("androidx.activity:activity-compose:1.8.2") api("androidx.appcompat:appcompat:1.6.1") implementation("org.jetbrains.kotlinx:kotlinx-coroutines-android:$coroutinesVersion") } } val desktopMain by getting { dependencies { implementation(compose.desktop.common) implementation("org.jetbrains.kotlinx:kotlinx-coroutines-swing:$coroutinesVersion") } } val commonTest by getting { dependencies { implementation(kotlin("test")) } } } task("testClasses") } android { namespace = "com.kevinnzou.sample" compileSdk = 34 sourceSets["main"].manifest.srcFile("src/androidMain/AndroidManifest.xml") sourceSets["main"].res.srcDirs("src/androidMain/res") sourceSets["main"].resources.srcDirs("src/commonMain/resources") defaultConfig { minSdk = 21 } compileOptions { sourceCompatibility = JavaVersion.VERSION_17 targetCompatibility = JavaVersion.VERSION_17 } kotlin { jvmToolchain(17) } } [/code] Скриншот местоположения JDK [img]https://i.sstatic.net/7AsTEuJe.png[/img] [img]https://i.sstatic.net/ZUfqn1mS.png[/img] Подробнее здесь: [url]https://stackoverflow.com/questions/78677051/erros-are-showing-in-shared-commainmain-files-with-kotlin-multiplatform-project[/url]