在与Realm类一起使用jacksonMapper时出现此错误
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类失败