Search code examples
androiddagger

error: cannot find symbol public abstract interface AppComponent extends dagger.android.AndroidInjector<EmsApplication>


Hello I am newbie in dagger. I am trying to learn but I am facing a issue in generating AppComponent class. Here is my AppComponent class code. I searched some answer in stackoverflow but none of them not working.

import EmsApplication
import android.app.Application
import com.example.emsapplication.utils.SessionManager
import dagger.BindsInstance
import dagger.Component
import dagger.android.AndroidInjector
import dagger.android.support.AndroidSupportInjectionModule
import javax.inject.Singleton

@Singleton
@Component(modules = \[AndroidSupportInjectionModule::class, ActivityBuildersModule::class, AppModule::class, ViewModelFactoryModule::class\])
interface AppComponent : AndroidInjector<EmsApplication>{
    fun sessionManager(): SessionManager?

    @Component.Builder
    interface Builder {
        @BindsInstance
        fun application(application: Application?): Builder?

        fun build(): AppComponent?
    }
}
error: cannot find symbol public abstract interface AppComponent extends dagger.android.AndroidInjector<EmsApplication>

Here is the output of build event.

Here is the build output

Here is the build.gradle

EmsApplication


Solution

  • A silly mistake take my 6 hours to find out hope this answer will help you out.

    • In my case i didn't give my package in my application class.
    • Please make sure that You also give your package name in every classes.enter image description here