我使用 IntelliJ IDEA 创建了一个新的 kotlin/JVM 项目,其中build.gradle.kts
:
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
plugins {
kotlin("jvm") version "1.6.0"
}
group = "me.ivanefan"
version = "1.0.0"
repositories {
mavenCentral()
maven("https://maven.pkg.jetbrains.space/public/p/compose/dev")
}
val osName = System.getProperty("os.name")
val targetOs = when {
osName == "Mac OS X" -> "macos"
osName.startsWith("Win") -> "windows"
osName.startsWith("Linux") -> "linux"
else -> error("Unsupported OS: $osName")
}
val osArch = System.getProperty("os.arch")
var targetArch = when (osArch) {
"x86_64", "amd64" -> "x64"
"aarch64" -> "arm64"
else -> error("Unsupported arch: $osArch")
}
val skikoVersion = "0.5.3"
val target = "${targetOs}-${targetArch}"
dependencies {
testImplementation(kotlin("test"))
implementation("org.jetbrains.skiko:skiko-jvm-runtime-$target:$skikoVersion")
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.0-RC")
}
tasks.test {
useJUnit()
}
tasks.withType<KotlinCompile>() {
kotlinOptions.jvmTarget = "1.8"
}
我已经复制了自述文件中的示例
但是,在我运行 main 函数后,我得到了这个:
Exception in thread "main" java.lang.NoClassDefFoundError: kotlinx/coroutines/GlobalScope
Caused by: java.lang.ClassNotFoundException: kotlinx.coroutines.GlobalScope
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:581)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
... 7 more
Process finished with exit code 1
在我添加implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.0-RC")
到我的dependencies
块之后build.gradle.kts
,它仍然不起作用:
Exception in thread "AWT-EventQueue-0" java.lang.NoClassDefFoundError: kotlinx/coroutines/swing/SwingDispatcherKt
at org.jetbrains.skiko.redrawer.MetalRedrawer.<init>(MetalRedrawer.kt:32)
at org.jetbrains.skiko.RenderFactory_jvmKt$makeDefaultRenderFactory$1.createRedrawer(RenderFactory.jvm.kt:29)
项目JDK:JDK 11.0.12 x86
我该如何解决。
如果您能提供帮助,非常感谢!:)