Я думаю, что часть (если не все) кода взята из этой кодовой метки: https://codelabs.developers.google.com/codelabs/android-room-with-a-view/
В третьей части кодовой метки, озаглавленной «Обновить файлы Gradle», они используют эти строки (вмодуля build.gradle) для импорта компонентов Room и Lifecycle:
// Room components
implementation "android.arch.persistence.room:runtime:$rootProject.roomVersion"
annotationProcessor "android.arch.persistence.room:compiler:$rootProject.roomVersion"
androidTestImplementation "android.arch.persistence.room:testing:$rootProject.roomVersion"
// Lifecycle components
implementation "android.arch.lifecycle:extensions:$rootProject.archLifecycleVersion"
annotationProcessor "android.arch.lifecycle:compiler:$rootProject.archLifecycleVersion"
Итак, эти "roomVersion" и "archLifecycleVersion" являются переменными, которые необходимо определить в основном файле build.gradle.В примере они используют эти значения:
ext {
roomVersion = '1.0.0'
archLifecycleVersion = '1.1.0'
}
Но я фактически использовал «1.1.1» для обеих переменных, и это работает.