Ошибка компилятора на самом деле исходит от процессора аннотаций Dagger 1.В частности, здесь: Кинжал 1 ValidationProcessor .Если обработчик аннотации видит, что любой интерфейс аннотирован javax.inject.Scope, он сообщает об ошибке.Даже если Dagger 1 не использует интерфейс или область видимости.
В настоящее время мы выполняем миграцию с Dagger 1 на Dagger 2, и, следовательно, оба процессора аннотаций работают на модулях Gradle, которые используют Dagger 1 и Dagger 2.
Одним из решений является полная миграция каждого Gradle.модуль, так что оба процессора аннотаций не должны работать на одном и том же коде.Однако это не всегда легко.
Наше решение заключалось в том, чтобы разветвлять Dagger 1 и модифицировать ValidationProcessor, чтобы он не работал, если интерфейс является компонентом Dagger 2.