Database_Impl不存在-具有Room的android应用

时间:2019-04-14 20:54:12

标签: android kotlin android-room

我正在尝试使用Room。我收到此错误(在运行时):

  

java.lang.RuntimeException:无法找到实现   com.easythings.booky.database.BookyDatabase。 BookyDatabase_Impl可以   不存在

我的BookyDatabase类:

@Database(entities = [Book::class, Chapter::class], version = 1)
abstract class BookyDatabase : RoomDatabase() {
    abstract val bookDao: BookDao
    abstract val chapterDao: ChapterDao

    companion object {
        @Volatile
        private var _databaseInstance: BookyDatabase? = null

        fun getDatabase(context: Context): BookyDatabase {
            if (_databaseInstance == null)
                synchronized(BookyDatabase::class.java) {
                    if (_databaseInstance == null)
                        _databaseInstance = Room.databaseBuilder(
                            context.applicationContext,
                            BookyDatabase::class.java,
                            "booky_database"
                        )
                            .fallbackToDestructiveMigration()
                            .build()
                }
            return _databaseInstance!!
        }
    }
}

我不明白怎么了。

1 个答案:

答案 0 :(得分:0)

BookyDatabase_Impl很可能没有生成...

a)因为缺少注释。

b),因为您没有注释处理器。

请参见DatabaseDefining data using Room entities