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

集成Jetpack Compose到legacy模块报IncompatibleComposeRuntimeVersionException如何解决

解决方案

你的配置明面上版本匹配,问题出在多模块传递依赖引入了低版本Compose Runtime,或者子模块Compiler配置不一致,按以下步骤排查解决:

  • 全局强制锁定Compose依赖版本
    在项目根目录的build.gradle的allprojects代码块中添加版本锁定规则,强制所有模块使用统一的Compose Runtime版本,避免第三方依赖传递引入低版本:
allprojects {
    configurations.all {
        resolutionStrategy {
            force "androidx.compose.runtime:runtime:1.0.1"
            force "androidx.compose.runtime:runtime-livedata:1.0.1"
            force "androidx.compose.runtime:runtime-rxjava2:1.0.1"
            // 其他你用到的Compose相关依赖也可以在这里统一锁定
        }
    }
}
  • 检查所有开启Compose模块的配置一致性
    确认app、legacy、common-ui三个开启了Compose的模块,都在各自的build.gradle中配置了完全一致的composeOptions:
android {
    composeOptions {
        kotlinCompilerExtensionVersion '1.0.1'
    }
    kotlinOptions {
        jvmTarget = '1.8'
    }
}

你当前使用的Compose Compiler 1.0.1和Kotlin 1.5.21的版本匹配符合官方要求,不需要调整这两个版本号。

  • 排查传递依赖冲突
    执行以下命令查看legacy模块的Compose Runtime依赖树,确认是否存在其他版本的runtime被引入:
./gradlew :legacy:dependencies | grep "androidx.compose.runtime:runtime"

如果找到非1.0.1版本的依赖,在引入该依赖的地方添加exclude规则移除低版本Compose Runtime即可。

  • 清理缓存后重新构建
    执行./gradlew clean清理构建缓存,再重新构建项目,排除缓存导致的版本识别异常。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 01:18:02