【发布时间】:2018-08-22 11:38:54
【问题描述】:
我无法处理与 Dagger 及其生成组件有关的错误。
import android.app.Application
import dagger.Component
@Component(modules = arrayOf(ApplicationModule::class))
interface ApplicationComponent{
fun inject(app: Application)
}
调用组件的地方是这样的
class MyAwesomeApplication : Application(){
val component: ApplicationComponent by lazy {
DaggerApplicationComponent.builder().appModule(ApplicationModule(this)).build()
}
override fun onCreate() {
super.onCreate()
component.inject(this)
}
}
在我设置的 gradle 构建文件中:
implementation "com.google.dagger:dagger:$dagger_version"
implementation "com.google.dagger:dagger-android:$dagger_version"
implementation "com.google.dagger:dagger-android-support:$dagger_version"
kapt "com.google.dagger:dagger-android-processor:$dagger_version"
存根生成也已打开,kotlin-kapt 已被应用
有什么想法吗?
【问题讨论】:
-
一段时间后看起来问题出在 kapt 依赖项上,我一直在使用“dagger-android-processor”,而我应该使用 dagger-compiller。
-
你也可以发布你的 build.gradle 文件吗?
-
除了标准的东西之外,没有其他依赖项和 kotlin-kapt 存根生成,正如我所提到的,缺少的是 dagger-compiller 依赖项。
-
@Robert 感谢您发布您的答案!而不是 cmets,请考虑 adding it below as a "self-answer" 并将其标记为接受 - 它可以帮助潜在的回答者知道您已经解决了您的问题,并让您在将来其他人偶然发现类似问题时获得信任。干杯!
标签: android kotlin dagger-2 dagger kapt