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

KMP项目集成Room 2.7.0-alpha01时Android端构建失败求助

KMP集成Room数据库Android构建失败问题及修复方案

我新建了一个Kotlin Multi Platform(KMP)示例项目,计划集成Room数据库。Room 2.7.0-alpha01版本已支持KMP,我按照官方文档添加了所有依赖,但Android应用无法构建,iOS端运行正常。

原配置信息

libs.versions.toml配置:

[libraries]
room = { module = "androidx:room", version.ref = "roomVersion" }
androidx-room-compiler = { module = "androidx.room:room-compiler", version.ref = "roomVersion" }

[plugins]
room = { id = "androidx.room", version.ref = "roomVersion" }

build.gradle.kts配置:

plugins{
   alias(libs.plugins.room)
}

androidMain.dependencies {
   implementation(libs.compose.ui.tooling.preview)
   implementation(libs.androidx.activity.compose)
   implementation(libs.room)
   implementation(libs.androidx.room.compiler)
}

错误情况

点击运行composeApp配置时,出现如下错误:
错误截图


更新[已修复]

我参考了KMP+Room的官方Fruit示例项目,修正了Room依赖配置后问题解决。感谢@ianhanniballake的解答。

修复后的libs.versions.toml配置:

androidx-room-compiler = { group = "androidx.room", name = "room-compiler", version.ref = "roomVersion" }
androidx-room-runtime = { group = "androidx.room", name = "room-runtime", version.ref = "roomVersion" }
androidx-room-paging = { group = "androidx.room", name = "room-paging", version.ref = "roomVersion" }

修复后的composeApp模块build.gradle.kts配置:

plugins {
    ......
    alias(libs.plugins.room)
}

room {
    schemaDirectory("$projectDir/schemas")
}


sourceSets {
    
    androidMain.dependencies {
        ......
        implementation(libs.androidx.room.paging)
        implementation(libs.androidx.room.compiler)
    }
    commonMain.dependencies {
        implementation(libs.androidx.room.runtime)
        ......
    }
}

android {

    room {
        schemaDirectory("$projectDir/schemas")
    }

    ....
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.24 16:13:12