IncompleteAnnotationException: dagger.Fournit le type d’élément manquant

Lorsque j’ajoute le code suivant, une erreur survient:

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

Je ne sais vraiment pas pourquoi.

J’ai rencontré exactement le même problème dans notre projet. Dans mon cas, cela est dû à une modification de l’API Dagger2: les développeurs de Dagger2 ont supprimé le paramètre type de l’annotation @Provides .

J’ai accidentellement utilisé la nouvelle version incompatible de la dépendance d’annotation (sans champ de type dans l’annotation) avec l’ancienne version du compilateur Dagger2. Il semble que, contrairement à certains autres types d’incompatibilités binarys, qui entraînent diverses Error exécution, la liaison avec des annotations incompatibles peut entraîner une exception IncompleteAnnotationException lors de l’introspection.

La mise à jour du compilateur dagger2 vers la même version que l’annotation a résolu le problème.