【问题标题】:Room Sqlite Android Error. ColumnInfo does not define an element collate()Room Sqlite Android 错误。 ColumnInfo 没有定义元素 collat​​e()
【发布时间】:2018-01-18 10:28:48
【问题描述】:

我在我的 android 应用程序中使用 google ROOM lib 来 sqlite 数据库。

我在我的单个应用程序中使用不同的控制器(用户定义)创建了两个数据库。

这是我已经实现的代码

数据库 1:

@Database(entities = {JobTable.class}, version = 1)
public abstract class JobRoomController extends RoomDatabase
{

public static JobRoomController controller;
public abstract JobTable jobTable();


    public static JobRoomController database(Context context)
    {
        if(controller == null)
        {
            controller =    Room.databaseBuilder(context.getApplicationContext(),
                    JobRoomController.class, "Job")
                    .allowMainThreadQueries()
                    .build();
        }

        return controller;

    }

    @Override
    protected SupportSQLiteOpenHelper createOpenHelper(DatabaseConfiguration config) {
        return null;
    }

    @Override
    protected InvalidationTracker createInvalidationTracker() {
        return null;
    }

}

数据库 2:

@Database(entities = {DbTrackServer.class,DbGpsStatus.class}, version = 1)
public abstract class RoomControl extends RoomDatabase {




   public abstract IGpsStatus gpsStatus();
   public abstract ITrack track();
   private static RoomControl roomControl;
   public static RoomControl database(Context context)
   {
     if(roomControl == null)
       {
        roomControl =    Room.databaseBuilder(context.getApplicationContext(),
                            RoomControl.class, "mobileTracker")
                           .allowMainThreadQueries()
                           .build();
       }

       return roomControl;

   }
  @Override
    protected SupportSQLiteOpenHelper createOpenHelper(DatabaseConfiguration config) {
        return null;
    }

    @Override
    protected InvalidationTracker createInvalidationTracker() {
        return null;
    }
}

但是当我构建我的项目时,它显示 gradle 错误。

**错误:任务':app:compileDebugJavaWithJavac'执行失败。

java.lang.IllegalArgumentException:@android.arch.persistence.room.ColumnInfo 没有定义元素 collat​​e()**

【问题讨论】:

    标签: android sqlite android-room android-database


    【解决方案1】:

    我已经通过从 gradle 文件更新 Room Lib 解决了这个问题。

    【讨论】:

      猜你喜欢
      • 2017-12-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-11-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多