Java教程

java.lang.RuntimeException: Cannot create an instance of class com.xxx.xxxViewModel

本文主要是介绍java.lang.RuntimeException: Cannot create an instance of class com.xxx.xxxViewModel,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

今天在Android项目中使用Hilt做依赖注入,结合Jetpack的ViewModel一起使用,报错如下:

java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.quickandroid/com.example.quickandroid.MainActivity}: java.lang.RuntimeException: Cannot create an instance of class com.xx.quickandroid.commonbiz.viewmodel.GitViewModel

排查了好久都不知道问题在哪,后来才发现:

我在子module中依赖了Hilt,而主module中直接依赖了这个自module而没有添加Hilt依赖,导致了上面的问题

如果你也遇到上面的报错信息排查不出问题来,切记检查你所有用到了Hilt的module,一定要在所有module的build.gradle头部添加hilt插件:

apply plugin: 'kotlin-kapt'
apply plugin: 'dagger.hilt.android.plugin'

并在依赖项中添加下面的配置:

implementation "com.google.dagger:hilt-android:2.28-alpha"
kapt "com.google.dagger:hilt-android-compiler:2.28-alpha"
这篇关于java.lang.RuntimeException: Cannot create an instance of class com.xxx.xxxViewModel的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!