Kotlin 文档中的领域示例代码给出';io.realm.exceptions.RealmException:Dog不是此领域的架构的一部分';

Kotlin 文档中的领域示例代码给出';io.realm.exceptions.RealmException:Dog不是此领域的架构的一部分';,kotlin,realm,Kotlin,Realm,我正试图将一段非常简单的JavaRealm代码直接用于Kotlin: 然后在其他地方我称之为: var dog = Dog() dog.name = "Rex" dog.age = 1 realm.beginTransaction() var managedDog: Dog = realm.copyToRealm(dog) val person = realm.createObject(Person::class.java) person.dogs!!.add(managedDog) real

我正试图将一段非常简单的Java
Realm
代码直接用于Kotlin:

然后在其他地方我称之为:

var dog = Dog()
dog.name = "Rex"
dog.age = 1

realm.beginTransaction()
var managedDog: Dog = realm.copyToRealm(dog)
val person = realm.createObject(Person::class.java)
person.dogs!!.add(managedDog)
realm.commitTransaction()
我希望Rex会被写入DB(也许我需要先调用
executeTransaction
),但是我得到了一个异常:

io.realm.exceptions.RealmException:Dog不是此领域架构的一部分

我应该如何使
成为我计划的一部分?给它一个
@PrimaryKey
id
没有帮助

更新:我想我需要添加一些模式,因为我打开了
default.realm
,它是空的:


发生这种情况可能是因为您没有添加
apply插件:“kotlin kapt”
@EpicPandaForce我刚刚看到您的评论,所以我尝试将apply插件:“realm android”放在其他插件之后,但我得到一个错误:无法更改配置的依赖项:app:api,因为它已包含在依赖项解析中。
    // Initialize Realm (just once per application)
    Realm.init(this);

    val config: RealmConfiguration = RealmConfiguration.Builder().name("default.realm").build()
    Realm.setDefaultConfiguration(config)

    realm = Realm.getDefaultInstance()
var dog = Dog()
dog.name = "Rex"
dog.age = 1

realm.beginTransaction()
var managedDog: Dog = realm.copyToRealm(dog)
val person = realm.createObject(Person::class.java)
person.dogs!!.add(managedDog)
realm.commitTransaction()