我目前正在开发一个项目来练习使用 Dagger-Hilt 进行依赖注入,但是我无法实例化我的 ViewModel,我已经查看了同一主题的其他一些问题,大多数问题都指向 Gradle,但是没有为我修复它,Stacktrace 中的所有错误都来自内部类,除了 MainActivity 中涉及我的 ViewModel 的两行之外
\n这是堆栈跟踪:
\nE/AndroidRuntime: FATAL EXCEPTION: main\nProcess: com.example.practiceproject, PID: 9873\njava.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.practiceproject/com.example.practiceproject.ui.MainActivity}: java.lang.RuntimeException: Cannot create an instance of class com.example.practiceproject.ui.viewmodel.DogViewModel\n at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3270)\n at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3409)\n at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:83)\n at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)\n at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)\n at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2016)\n at android.os.Handler.dispatchMessage(Handler.java:107)\n at android.os.Looper.loop(Looper.java:214)\n at android.app.ActivityThread.main(ActivityThread.java:7356)\n at java.lang.reflect.Method.invoke(Native Method)\n at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492)\n at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:930)\n Caused by: java.lang.RuntimeException: Cannot create an instance of class com.example.practiceproject.ui.viewmodel.DogViewModel\n at androidx.lifecycle.ViewModelProvider$NewInstanceFactory.create(ViewModelProvider.java:221)\n at androidx.lifecycle.ViewModelProvider$AndroidViewModelFactory.create(ViewModelProvider.java:278)\n at androidx.lifecycle.SavedStateViewModelFactory.create(SavedStateViewModelFactory.java:112)\n at androidx.lifecycle.SavedStateViewModelFactory.create(SavedStateViewModelFactory.java:146)\n at dagger.hilt.android.internal.lifecycle.HiltViewModelFactory.create(HiltViewModelFactory.java:111)\n at androidx.lifecycle.ViewModelProvider.get(ViewModelProvider.java:187)\n …Run Code Online (Sandbox Code Playgroud)