Класс Realm провалился с помощью Jacksonmapper kotlin - PullRequest
0 голосов
/ 10 апреля 2019

Я получаю эту ошибку при использовании jacksonMapper с классом Realm

Non-fatal Exception: com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException: Unrecognized field "id" (class com.company.myproject.model.realm.d), not marked as ignorable (0 known properties: ]

Это мой код:

val list = jacksonObjectMapper().readValue<List<CountryRealm>>(readJSONFromAsset("country.json")

Это мой класс CountryRealm:

@RealmClass
open class CountryRealm : RealmObject() {
    @PrimaryKey
    var id: Int = 0
    var code: String = ""
    var description: String = ""
}

Я использую Proguard со следующими правилами:

-dontwarn com.fasterxml.jackson.databind.**
-keep class kotlin.Metadata { *; }
-keep class kotlin.reflect.** { *; }
# Jackson
-keep @com.fasterxml.jackson.annotation.JsonIgnoreProperties class * { *; }
-keep class com.fasterxml.** { *; }
-keep class org.codehaus.** { *; }
-keepnames class com.fasterxml.jackson.** { *; }
-keepclassmembers public final enum com.fasterxml.jackson.annotation.JsonAutoDetect$Visibility {
    public static final com.fasterxml.jackson.annotation.JsonAutoDetect$Visibility *;
}

При удалении Proguard все работает отлично.

Обратите внимание, что сопоставление не выполняется только для классов Realm

...