我使用Android 1.2.2和领域0.81.1。我创建了一个模型“类别”如下:
@RealmClass
public class Category extends RealmObject {
   private String name;
   // getter and setter
}但是我得到了java.lang.IllegalArgumentException:类别不是这个领域的模式的一部分
我甚至启用了注释处理,但错误仍然持续存在。
如何解决这个错误?任何帮助都是非常感谢的。
更新
我深入研究了领域代码。我在Util.class文件中发现,
if(!superclass.equals(RealmObject.class)) {
        clazz = superclass;
    }它正在检查我正在使用的模型的超类。当我打印出这个模式的超类时,我自己,就像:
category.getClass().getSuperclass().getName();我得到的是'io.realm.RealmObject‘,这不等于RealmObject.class。因此,领域可能不会将其视为一个RealmObject。
这是导致错误的原因吗?
发布于 2016-04-11 20:41:29
在我的例子中,我需要添加领域插件(应用插件:‘领域-安卓’)到每个使用领域的.gradle项目。RealRecyclerView和我的主要应用程序项目。
发布于 2016-12-07 03:22:50
我发现插件在应用程序的build.gradle文件中指定的顺序很重要。在我的例子中,我有一个应用插件:‘领域-android’,但显然它被指定得太早了。最后一次成功了。
这次失败了。
apply plugin: 'com.android.application'
apply plugin: 'realm-android'
apply plugin: 'android-apt'
apply plugin: 'com.neenbedankt.android-apt'然而,这是可行的(请注意最后一个是真正的android)。
apply plugin: 'com.android.application'
apply plugin: 'android-apt'
apply plugin: 'com.neenbedankt.android-apt'
apply plugin: 'realm-android'发布于 2016-02-11 13:15:05
我不知道你是否还存在这个问题,但在我这一边,我只是清理项目和重新构建。之后工作得很好..。请注意,我有android工作室作为ide。
https://stackoverflow.com/questions/31325127
复制相似问题