Аннотации Android генерируют классы, но классы dagger2 @Module не могут получить доступ к этим классам

Я использую аннотации Android 4.6.0 и Dagger2 2.25.2. Я обновил версию своего плагина Gradle до 3.5.2. Библиотека аннотаций Android генерирует классы для всех действий и фрагментов, я могу видеть код в сгенерированных классах. Итак, если файлы/классы существуют, то почему Dagger не может получить к ним доступ? Пожалуйста, проверьте ниже ошибку.

dagger.internal.codegen.ComponentProcessor не смог обработать этот интерфейс, так как не удалось разрешить все его зависимости. Проверьте наличие ошибок компиляции или циклической зависимости с помощью сгенерированного кода.

Пример: для MainActivity генерируется MainActivity_.

Аннотации Android 4.6.0 и Dagger2 2.25.2 Эти библиотеки отлично работают с плагином версии gradle 3.3.2. Итак, я что-то упустил, есть ли обходной путь для этой проблемы? Заранее спасибо.


person Tejas Shelke    schedule 29.11.2019    source источник


Ответы (2)


Решение:

dependencies{
...
compile 'com.google.dagger:dagger:2.11'
compile 'com.google.dagger:dagger-android-support:2.11'
annotationProcessor "com.google.dagger:dagger-compiler:2.11"
}
person R.Desai    schedule 11.12.2019
comment
Есть ли какая-то конкретная причина для использования более старой версии кинжала 2.11. - person Tejas Shelke; 16.12.2019

Лучше использовать

dependencies{
...
implementation 'com.google.dagger:dagger:2.11'
implementation 'com.google.dagger:dagger-android-support:2.11'
annotationProcessor "com.google.dagger:dagger-compiler:2.11"
}
person Sushant Somani    schedule 11.12.2019