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

当我添加下面的代码时出现错误:

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

我真的不知道为什么。

我在我们的项目中遇到了同样的问题。 在我的情况下,它是由Dagger2 API中的更改引起的:Dagger2开发人员已从注释@Provides 移除了type参数。

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

将dagger2编译器更新为与注释相同的版本已解决该问题。