在类RoomOpenHelper中构建Android Room数据库时出错

问题描述 投票:2回答:2

我正在关注这个例子here并将其集成到我正在开发的当前应用程序中。我有以前的SQL数据库,但我不是试图迁移它们。

我有库设置和所有代码,但当我尝试构建以在模拟器上测试时,我得到此错误。

Error:(27, 60) error: constructor RoomOpenHelper in class RoomOpenHelper cannot be applied to given types;
required: DatabaseConfiguration,Delegate,String,String
found: DatabaseConfiguration,<anonymous Delegate>,String
reason: actual and formal argument lists differ in length

似乎'RoomOpenHelper'需要一个identityHash和legacyHash。没有提供遗产,我无法弄清楚原因。

这是我正在使用的库

implementation "android.arch.lifecycle:runtime:1.1.0"
implementation "android.arch.lifecycle:extensions:1.1.0"
annotationProcessor "android.arch.lifecycle:compiler:1.1.0"

implementation "android.arch.persistence.room:runtime:1.0.0"
annotationProcessor "android.arch.persistence.room:compiler:1.0.0"
compile "android.arch.persistence.room:rxjava2:1.1.0-alpha1"

implementation "android.arch.lifecycle:common-java8:1.1.0"

我曾尝试使用和不使用常见的java8库。

android sqlite android-room
2个回答
3
投票

我通过将2个持久性库更新为1.1.0 alpha版本来修复此问题


1
投票

它通常是由房间依赖性的变化引起的。确保正常依赖项,注释依赖项和rxjava支持依赖项都在同一版本中。

© www.soinside.com 2019 - 2024. All rights reserved.