你好,我是匕首的新手。我正在尝试学习,但是在生成AppComponent类时遇到了问题。这是我的AppComponent
类代码。我在stackoverflow中搜索了一些答案,但没有一个不起作用。
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>
这是构建事件的输出。
答案 0 :(得分:1)
尝试将您的代码更改为。
interface AppComponent : AndroidInjector<EmsApplication> {
fun sessionManager(): SessionManager?
@Component.Builder
interface Builder {
@BindInstance
fun application(application: EmsApplication): Builder
fun build():AppComponent
}
您能否提供更多有关此的信息?您的EmsApplication。也会有帮助的。
答案 1 :(得分:1)