You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Jetpack Compose项目添加KSP依赖引入Room Compiler后报错排查

问题诊断与修复方案

你遇到的核心问题是版本兼容性不匹配,以下是具体错误点和修复步骤:

1. KSP、Kotlin、Compose Compiler版本不兼容

你使用的KSP版本1.8.10-1.0.9要求项目Kotlin版本必须为1.8.10,但你修改的kotlinCompilerExtensionVersion(Compose编译器版本)为1.5.8,这个版本对应的Kotlin版本是1.9.0左右,两者完全不匹配,直接导致编译时大量冲突。

修复操作:

  • 先确认项目根目录build.gradle.kts中的Kotlin插件版本,确保和KSP版本前半段完全一致:
    plugins {
        id("com.android.application") version "8.2.0" apply false
        id("org.jetbrains.kotlin.android") version "1.8.10" apply false
        id("com.google.devtools.ksp") version "1.8.10-1.0.9" apply false
    }
    
  • 再将模块级build.gradle.kts的kotlinCompilerExtensionVersion改为Kotlin 1.8.10对应的Compose版本:
    composeOptions {
        kotlinCompilerExtensionVersion = "1.5.0"
    }
    

2. 确认Room依赖配置的一致性

你的Room runtime、ktx、compiler版本均为2.6.1,这部分配置是正确的,无需调整。但要注意:如果项目之前用过kapt依赖Room编译器,必须彻底移除,避免KSP和kapt冲突。

3. 清理重建项目

完成版本调整后,执行以下操作:

  • 点击File > Invalidate Caches... > Invalidate and Restart
  • 重新同步Gradle,然后执行Build > Clean Project,再执行Build > Rebuild Project

补充排查点

如果调整后仍有错误,检查:

  • Room实体类、DAO类、Database类是否符合规范(比如实体类加@Entity、DAO加@Dao、Database类正确继承RoomDatabase并加@Database注解)
  • 模块级build.gradle.kts是否正确应用KSP插件:
    plugins {
        id("com.android.application")
        id("org.jetbrains.kotlin.android")
        id("com.google.devtools.ksp") // 确保该行存在
    }
    

内容的提问来源于stack exchange,提问作者Raj

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.01 23:25:16