当我构建这段代码时,它显示了构建错误:

DatabaseManager_Impl is not abstract and does not override abstract method clearAllTables() in RoomDatabase.

build.gradle:

implementation 'android.arch.persistence.room:runtime:1.0.0'
kapt 'android.arch.persistence.room:compiler:1.0.0'
implementation 'android.arch.persistence.room:rxjava2:1.0.0'
implementation 'android.arch.persistence.room:guava:1.1.0-beta3'

按照房间指南实施数据库:

@Database(entities = {Task.class}, version = 1)
public abstract class DatabaseManager extends RoomDatabase {
    private static final String DATABASE =
                         Iterables.getLast(Splitter.on(".").trimResults().split(BuildConfig.APPLICATION_ID)).concat("-db");
    private static volatile DatabaseManager instance;

    public abstract TaskDao taskDao();

    synchronized public static DatabaseManager onInstance(Context context)     {
        if (instance == null) {
            instance = newInstance(context, false);
        }
        return instance;
    }

    public static DatabaseManager newInstance(Context context, boolean memoryOnly) {
        RoomDatabase.Builder<DatabaseManager> builder;

        if (memoryOnly) {
            builder = Room.inMemoryDatabaseBuilder(context.getApplicationContext(), DatabaseManager.class);
        } else {
            builder = Room.databaseBuilder(context.getApplicationContext(), DatabaseManager.class, DATABASE);
        }

        return builder.fallbackToDestructiveMigration().build();
    }

}

推荐答案

对我来说,修复方法是将所有文件室图书馆的版本更改为1.0.0

还要确保使用kapt而不是annotationProccessor

Kotlin相关问答推荐

在intellij中使用kotlin符号和floordiv

可以从背景图像中点击图标吗?

如何在数据类中删除空格 (String)?

限制通用Kotlin枚举为特定类型

Kotlin 获取继承类的默认 hashCode 实现

Kotlin 接口类型参数

Kotlin中用于调用常量名称的枚举类方法之间的区别

如何在 Spring Boot 3 中为内部类提供运行时提示

Kotlin Path.useLines { } - 如何不获取 IOException("Stream closed")?

如何限制 Kotlin 中的枚举?

Jetpack BottomNavigation - java.lang.IllegalStateException:Already attached to lifecycleOwner

Koin Android:org.koin.error.NoBeanDefFoundException

Kotlin:泛型、反射以及类型 T 和 T:Any 之间的区别

Gradle 同步失败:不支持的方法:KotlinPlatformContainer.supports()

如何在 Kotlin 中使用 volatile

androidx.core:core-ktx:1.0.0 小部件包丢失

有没有办法在数据类构建时转换属性的值?

接口中的属性不能有支持字段

如何在Kotlin中将字符串转换为InputStream?

Kotlin 中的限制函数