Jetpack Compose Desktop运行JUnit测试报Kotlin内部错误如何解决
问题根因
报错本质是JetBrains Compose版本与Kotlin版本存在严格的绑定规则,你当前使用的Compose 1.0.0-alpha3与Kotlin 1.5.21不兼容,同时存在插件仓库配置不全、依赖配置冗余冲突的问题。
解决方案
1. 修正插件仓库配置
在项目根目录的settings.gradle.kts最顶部添加如下配置,确保可以拉取到Compose插件:
pluginManagement { repositories { gradlePluginPortal() maven("https://maven.pkg.jetbrains.space/public/p/compose/dev") mavenCentral() } }
2. 修正根项目build.gradle.kts插件配置
Kotlin 1.5.21匹配的JetBrains Compose版本为1.0.0-rc2,修改插件块配置如下:
plugins { kotlin("jvm") version "1.5.21" apply false id("org.jetbrains.compose") version "1.0.0-rc2" apply false }
3. 修正模块级build.gradle.kts依赖配置
删除你之前配置的冗余kotlinCompilerClasspath项,避免引入冲突的编译器依赖,最终配置参考:
plugins { kotlin("jvm") id("org.jetbrains.compose") } dependencies { implementation(compose.desktop.currentOs) testImplementation("org.junit.jupiter:junit-jupiter:5.8.1") } tasks.test { useJUnitPlatform() }
4. 清理缓存重新构建
- 打开IntelliJ菜单栏
File → Invalidate Caches...,勾选清理文件系统缓存,重启IDE - 重启后执行Gradle的
clean任务,再执行build任务即可正常编译运行测试
内容的提问来源于stack exchange,提问作者ryanflynn001
相关产品推荐
相关产品推荐

