Kotling 1.3.21から1.3.30への更新後のビルドエラー:
AppComponent.Java:16: error: [Dagger/MissingBinding]
Java.util.Map<Java.lang.Class<? extends androidx.lifecycle.ViewModel>,
javax.inject.Provider<androidx.lifecycle.ViewModel>>
cannot be provided without an @Provides-annotated method.
Kotlin、Dagger、およびアーキテクチャコンポーネントへの同様の依存関係を持つ2つの異なるプロジェクトで再現。
Kotlin 1.3.30の最近のkapt更新に何らかの形で関連していると思います: https://blog.jetbrains.com/kotlin/2019/04/kotlin-1-3-30-released/
記事のkaptオプションを無効/有効にしようとしました、gradle cleanを無効にしてキャッシュを無効にしてみましたが、何も役に立ちません。 1.3.21プロジェクトへのダウングレードのみが正常にビルドされます。
Upgrade
dagger version および kotlin version をlatest
に
annotation class
は動作するはずです。
現在の最新バージョンは:-
Daggerバージョン:-2.23.2
Kotlinバージョン:-1.3.41