Jetpack Compose调用viewModel()报Unresolved reference: compose错误求助
解决Jetpack Compose中
viewModel()的"Unresolved reference: compose"错误 核心原因
该错误源于项目未引入lifecycle-viewmodel-compose依赖库,viewModel()函数正是定义在此库中。
解决步骤
1. 添加对应依赖
打开Module级别的build.gradle文件(非Project根目录的配置文件),在dependencies代码块中添加以下依赖:
implementation "androidx.lifecycle:lifecycle-viewmodel-compose:2.6.2"
提示:版本号可根据项目中Compose、Lifecycle的整体版本调整,建议保持与其他Lifecycle组件版本一致。
2. 同步Gradle配置
点击Android Studio右上角的「Sync Now」按钮,等待依赖同步完成。
3. 确认导入语句
在使用viewModel()的代码文件(如MainActivity.kt)中,确保导入了正确的包:
import androidx.lifecycle.viewmodel.compose.viewModel
额外排查项
- 检查项目是否已正确配置Jetpack Compose基础依赖与插件,比如Module的
build.gradle中是否设置了kotlinCompilerExtensionVersion和composeOptions。 - 若同步后仍报错,可尝试执行「Build -> Clean Project」清理项目,再执行「Build -> Rebuild Project」重新构建。
内容的提问来源于stack exchange,提问作者Felix Olszewski
相关产品推荐
相关产品推荐

