Dagger 2 androidx碎片不兼容类型

Dagger 2 androidx碎片不兼容类型,android,kotlin,dependency-injection,dagger-2,androidx,Android,Kotlin,Dependency Injection,Dagger 2,Androidx,我用的是匕首2.21 @Module internal abstract class FragmentModule { @ContributesAndroidInjector internal abstract fun loginFragment() : LoginFragment } 及 @Singleton @组件(模块=[AndroidSupportInjectionModule::class、AppModule::class、ActivityModule::class、

我用的是匕首2.21

@Module
internal abstract class FragmentModule {
    @ContributesAndroidInjector
    internal abstract fun loginFragment() : LoginFragment
}

@Singleton
@组件(模块=[AndroidSupportInjectionModule::class、AppModule::class、ActivityModule::class、ViewModelBuilder::class、ViewModelModule::class、RepositoriesModule::class、ApiModule::class、FragmentModule::class])
接口组件:AndroidJector{
@组件生成器
抽象类生成器:androidject.Builder()
}
我得到这个错误:

/app/build/generated/source/kapt/debug/com/photoco/app/injection/module/FragmentModule\u LoginFragment$app\u debug.java:18:错误:不兼容类型:无法将类LoginFragment转换为类扩展片段

我一直在搜索,发现使用2.21并设置它可以工作,但还没有运气

android.useAndroidX=true;android.enableJetifier=true

LoginFragment扩展了:

dagger.android.support.DaggerFragment()

由于所有这些设置都无法构建,我是不是遗漏了什么?我可以使用DaggerActivity使其与活动一起工作,但不能与片段一起工作

PhotocoApplication扩展了dagger.android.support.DaggerApplication


谢谢

通过将所有dagger依赖项更新为2.21修复了此问题,缺少android支持(仍在使用2.16)


我也有同样的问题,但有两个非Android类:EventBus和一个围绕Android资源的包装器类

我尝试了伊曼纽尔·阿米吉尼奥(Emanuel Amiginho)提出的解决方案,尽管它与android支持无关,但得到了修复。因此,我尝试删除添加的依赖项并重试,然后神奇地再次成功构建


所以我想在我的例子中,是缓存问题。

这解决了我的问题。奇怪的是,Android Studio IDE没有提示我用lint更新依赖项。谢谢你发布这个答案!
@Singleton
@Component(modules = [AndroidSupportInjectionModule::class, AppModule::class, ActivityModule::class, ViewModelBuilder::class, ViewModelModule::class, RepositoriesModule::class, ApiModule::class, FragmentModule::class])
interface AppComponent : AndroidInjector<PhotocoApplication> {
    @Component.Builder
    abstract class Builder : AndroidInjector.Builder<PhotocoApplication>()
}
implementation 'com.google.dagger:dagger:2.21'
implementation 'com.google.dagger:dagger-android:2.21'
implementation 'com.google.dagger:dagger-android-support:2.21'
kapt "com.google.dagger:dagger-compiler:2.21"
kapt "com.google.dagger:dagger-android-processor:2.21"