У меня следующая проблема: я использую Koin для DI и Room для настойчивости.Теперь мои комнатные зависимости следующие:
// Architecture Component - Room
implementation "android.arch.persistence.room:runtime:1.1.1"
annotationProcessor "android.arch.persistence.room:compiler:1.1.1"
Но я получаю описанную здесь ошибку: Постоянная комната Android: AppDatabase_Impl не существует
Поэтому я изменил annotationProcessorкапт.Но теперь я получаю несколько ошибок в автоматически сгенерированных из классов привязки данных, которых не было с annotationProcessor.Например:
app/build/generated/data_binding_base_class_source_out/debug/dataBindingGenBaseClassesDebug/out/databinding/FragmentBinding.java:26: error: cannot find symbol
protected FragmentBinding(DataBindingComponent _bindingComponent, View _root,
^
symbol: class DataBindingComponent
location: class FragmentBinding
Определение модуля Коина:
val persistenceModule = module {
single {
Room.databaseBuilder(androidApplication(), Database::class.java, "database.db")
.build()
}
single { get<Database>().dao() }
}
Как это может произойти?