アプリケーションの実行中に次のエラーが発生します
Java.lang.RuntimeException: cannot find implementation for com.abc.db.abdDB. abcDB_Impl does not exist
私のbuild.gradleには次の構成があります:
implementation "androidx.lifecycle:lifecycle-extensions:2.0.0-alpha1"
annotationProcessor "androidx.lifecycle:lifecycle-compiler:2.0.0-alpha1"
implementation "androidx.room:room-runtime:2.0.0-alpha1"
annotationProcessor "androidx.room:room-compiler:2.0.0-alpha1"
私のデータベースクラス:
fun getDatabase(context: Context): abcDB? {
if (dbInstance == null) {
synchronized(abcDB::class.Java) {
if (dbInstance == null) {
dbInstance = Room.databaseBuilder(context.applicationContext,
abcDB::class.Java, "abc_db")
.fallbackToDestructiveMigration()
.addCallback(sRoomDatabaseCallback)
.build()
}
}
}
return dbInstance
}
誰もandroidX APIを使用しようとしますか?誰かがこの解決策を見つけるのを助けることができますか?
Kotlinを使用する場合は、kapt
の代わりにannotationProcessor
を使用する必要があり、kotlin-kapt
プラグイン。
apply plugin: 'kotlin-Android'
apply plugin: 'kotlin-kapt'
dependencies {
implementation "androidx.lifecycle:lifecycle-extensions:2.0.0-alpha1"
kapt "androidx.lifecycle:lifecycle-compiler:2.0.0-alpha1"
implementation "androidx.room:room-runtime:2.0.0-alpha1"
kapt "androidx.room:room-compiler:2.0.0-alpha1"