Kotlin多平台Ktor集成报错:无法找到序列化编译器插件依赖
解决Kotlin序列化插件版本不匹配导致的依赖解析错误
你遇到的错误核心原因是Kotlin序列化插件版本必须与项目中使用的Kotlin编译器版本完全一致。你配置了序列化插件版本为1.9.0,但项目实际在寻找1.8.21版本的插件构件,说明你的项目里Kotlin Gradle插件的版本是1.8.21,两者版本不匹配引发了依赖解析失败。
以下是具体解决办法:
方案1:统一Kotlin与序列化插件版本
- 打开项目根目录的
build.gradle.kts(或build.gradle)文件,找到Kotlin多平台插件的版本声明,比如:plugins { kotlin("multiplatform") version "1.8.21" apply false } - 将序列化插件的版本修改为与Kotlin插件完全一致的版本:
kotlin("plugin.serialization") version "1.8.21"
方案2:用Kotlin BOM统一管理版本(推荐)
对于多平台项目,使用Kotlin BOM可以自动同步所有Kotlin相关依赖的版本,避免版本冲突:
- 在根项目的
build.gradle.kts中引入Kotlin BOM:dependencies { implementation(platform("org.jetbrains.kotlin:kotlin-bom:1.9.0")) } - 配置序列化插件时省略版本号,它会自动从BOM中匹配对应版本:
plugins { kotlin("plugin.serialization") } - 同时确保Kotlin Gradle插件版本与BOM版本一致:
plugins { kotlin("multiplatform") version "1.9.0" apply false }
额外检查
确认项目根build.gradle.kts的仓库配置中包含mavenCentral(),因为Kotlin插件构件托管在Maven Central:
repositories { mavenCentral() google() }
内容的提问来源于stack exchange,提问作者Arul
相关产品推荐
相关产品推荐

