IncompleteAnnotationException:dagger。提供缺少的元素类型

时间:2017-05-29 08:37:14

标签: java gson kotlin dagger

当我添加以下代码时,会出现错误:

@Singleton @Provides fun provideGson() : Gson {
    return Gson()
}

我真的不知道为什么。

2 个答案:

答案 0 :(得分:4)

我在项目中遇到了完全相同的问题。在我的情况下,它是由Dagger2 API中的更改引起的:Dagger2开发人员have removed来自注释type的{​​{1}}参数。

我不小心使用了旧版Dagger2编译器的新版不兼容版本的注释依赖项(注释中没有@Provides字段)。看起来,与其他导致各种运行时type的其他类型的二进制不兼容性不同,在内省期间,与不兼容的注释的链接可能会导致Error

将dagger2编译器更新为与注释相同的版本已修复此问题。

答案 1 :(得分:1)

将Dagger从2.8更新到2.12(一切正常)后