ganluo960214
09/24/2024, 2:39 AMNoDefinitionFoundException: No definition found for type 'viewModelA'. Check your Modules configuration and add missing type and/or qualifier!
import androidx.compose.runtime.Composable
import androidx.lifecycle.ViewModel
import org.koin.compose.KoinApplication
import org.koin.compose.koinInject
import org.koin.dsl.koinApplication
import org.koin.dsl.module
@Composable
fun App() {
KoinApplication(
application = {
koinApplication {
modules(
module {
single<viewModelA> { viewModelA() }
}
)
}
}
) {
val a = koinInject<viewModelA>()
}
}
class viewModelA : ViewModel(){
}
FATAL EXCEPTION: main (Ask Gemini)
Process: com.producer_luckily_industry.next_sight, PID: 14628
java.lang.RuntimeException: java.lang.reflect.InvocationTargetException
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:575)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1081)
Caused by: java.lang.reflect.InvocationTargetException
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:565)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1081)
Caused by: org.koin.core.error.NoDefinitionFoundException: No definition found for type 'viewModelA'. Check your Modules configuration and add missing type and/or qualifier!
at org.koin.core.scope.Scope.resolveFromContext(Scope.kt:532)
at org.koin.core.scope.Scope.stackParametersCall(Scope.kt:281)
at org.koin.core.scope.Scope.resolveInstance(Scope.kt:259)
at org.koin.core.scope.Scope.resolveWithOptionalLogging(Scope.kt:232)
at org.koin.core.scope.Scope.get(Scope.kt:215)
at ComposableSingletons$AppKt$lambda-1$1.invoke(App.kt:69)
at ComposableSingletons$AppKt$lambda-1$1.invoke(App.kt:43)
at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:109)
at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:35)
at androidx.compose.runtime.CompositionLocalKt.CompositionLocalProvider(CompositionLocal.kt:380)
at org.koin.compose.KoinApplicationKt.KoinApplication(KoinApplication.kt:114)
at AppKt.App(App.kt:33)
at com.producer_luckily_industry.next_sight.ComposableSingletons$MainActivityKt$lambda-1$1.invoke(MainActivity.kt:28)
at com.producer_luckily_industry.next_sight.ComposableSingletons$MainActivityKt$lambda-1$1.invoke(MainActivity.kt:27)
at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:109)
at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:35)
at androidx.compose.ui.platform.ComposeView.Content(ComposeView.android.kt:441)
at androidx.compose.ui.platform.AbstractComposeView$ensureCompositionCreated$1.invoke(ComposeView.android.kt:259)
at androidx.compose.ui.platform.AbstractComposeView$ensureCompositionCreated$1.invoke(ComposeView.android.kt:258)
at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:109)
at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:35)
at androidx.compose.runtime.CompositionLocalKt.CompositionLocalProvider(CompositionLocal.kt:380)
at androidx.compose.ui.platform.CompositionLocalsKt.ProvideCommonCompositionLocals(CompositionLocals.kt:216)
at androidx.compose.ui.platform.AndroidCompositionLocals_androidKt$ProvideAndroidCompositionLocals$3.invoke(AndroidCompositionLocals.android.kt:132)
at androidx.compose.ui.platform.AndroidCompositionLocals_androidKt$ProvideAndroidCompositionLocals$3.invoke(AndroidCompositionLocals.android.kt:131)
at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:109)
at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:35)
at androidx.compose.runtime.CompositionLocalKt.CompositionLocalProvider(CompositionLocal.kt:380)
at androidx.compose.ui.platform.AndroidCompositionLocals_androidKt.ProvideAndroidCompositionLocals(AndroidCompositionLocals.android.kt:121)
at androidx.compose.ui.platform.WrappedComposition$setContent$1$1$3.invoke(Wrapper.android.kt:155)
at androidx.compose.ui.platform.WrappedComposition$setContent$1$1$3.invoke(Wrapper.android.kt:154)
at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:109)
at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:35)
at androidx.compose.runtime.CompositionLocalKt.CompositionLocalProvider(CompositionLocal.kt:401)
at androidx.compose.ui.platform.WrappedComposition$setContent$1$1.invoke(Wrapper.android.kt:154)
at androidx.compose.ui.platform.WrappedComposition$setContent$1$1.invoke(Wrapper.android.kt:133) (Ask Gemini)
at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:109)
at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:35)
at androidx.compose.runtime.ActualJvm_jvmKt.invokeComposable(ActualJvm.jvm.kt:97)
at androidx.compose.runtime.ComposerImpl.doCompose(Composer.kt:3593)
at androidx.compose.runtime.ComposerImpl.composeContent$runtime_release(Composer.kt:3520)
at androidx.compose.runtime.CompositionImpl.composeContent(Composition.kt:743)
at androidx.compose.runtime.Recomposer.composeInitial$runtime_release(Recomposer.kt:1122)
at androidx.compose.runtime.CompositionImpl.composeInitial(Composition.kt:649)
at androidx.compose.runtime.CompositionImpl.setContent(Composition.kt:635)
at androidx.compose.ui.platform.WrappedComposition$setContent$1.invoke(Wrapper.android.kt:133)
at androidx.compose.ui.platform.WrappedComposition$setContent$1.invoke(Wrapper.android.kt:124)
at androidx.compose.ui.platform.AndroidComposeView.setOnViewTreeOwnersAvailable(AndroidComposeView.android.kt:1625)
at androidx.compose.ui.platform.WrappedComposition.setContent(Wrapper.android.kt:124)
at androidx.compose.ui.platform.WrappedComposition.onStateChanged(Wrapper.android.kt:180)
at androidx.lifecycle.LifecycleRegistry$ObserverWithState.dispatchEvent(LifecycleRegistry.jvm.kt:320)
at androidx.lifecycle.LifecycleRegistry.addObserver(LifecycleRegistry.jvm.kt:198)
at androidx.compose.ui.platform.WrappedComposition$setContent$1.invoke(Wrapper.android.kt:131)
at androidx.compose.ui.platform.WrappedComposition$setContent$1.invoke(Wrapper.android.kt:124)
at androidx.compose.ui.platform.AndroidComposeView.onAttachedToWindow(AndroidComposeView.android.kt:1706)
at android.view.View.dispatchAttachedToWindow(View.java:22360)
at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:3605)
at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:3612)
at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:3612)
at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:3612)
at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:3612)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:3571)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:2992)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:10469)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1671)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1680)
at android.view.Choreographer.doCallbacks(Choreographer.java:1191)
at android.view.Choreographer.doFrame(Choreographer.java:1063)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:1650)
at android.os.Handler.handleCallback(Handler.java:958)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loopOnce(Looper.java:222)
at android.os.Looper.loop(Looper.java:314)
at android.app.ActivityThread.main(ActivityThread.java:8716)
... 3 more
Muaz KADAN
09/24/2024, 3:46 AMMuaz KADAN
09/24/2024, 4:07 AM@Composable
fun App() {
KoinApplication(
application = {
modules(
module {
single<viewModelA> { viewModelA() }
}
)
}
) {
val a = koinInject<viewModelA>()
}
}
class viewModelA : ViewModel() {
}
Can you try this ?Marcello Galhardo
09/24/2024, 8:19 AMganluo960214
09/24/2024, 10:53 AMganluo960214
09/24/2024, 10:54 AMMuaz KADAN
09/24/2024, 10:56 AMval viewModel: HomeViewModel = koinViewModel()
or
val viewModel = koinViewModel<HomeViewModel>()
ganluo960214
09/24/2024, 11:02 AM