Jackson与Kotlin混合
我正在尝试使用Jackson mixin忽略外部Kotlin数据类的属性,但到目前为止,它并不适用于我。
这是我的SimpleModule扩展名:
class BarModule : SimpleModule() { override fun setupModule(context: SetupContext?) { context?.setMixInAnnotations(Bar::class.java, BarMixin::class.java) } }
这是我的混合:
abstract class BarMixin { @JsonIgnore val totalValue: Double = 0.0 }
我最初尝试@JsonIgnore val totalValue:双,但它不会接受。
这是我的班级:
data class Bar( val a: String, val b: Boolean = false, val c: Boolean = false, val d: Array<Block> ) { val totalValue: Double by lazy { d.sumByDouble { it.value } } }
这是我如何创建我的映射器:
private val mapper = jacksonObjectMapper().registerModule(KotlinModule()).registerModule(BarModule())
运行时,它崩溃的错误:无法启动活动:com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException:无法识别的字段“totalValue”,未标记为可忽略
尝试把注释放在MixIn的构造函数中,如:
abstract class BarMixin ( @JsonIgnore val totalValue: Double = 0.0 )
(注意()
而不是{}
)
- 如何在Android Studio中将Kotlin错误链接到源代码?
- 如何解决找不到android.arch.lifecycle:编译器?
- 在android studio中用c ++编写应用程序?
- compileReleaseKotlin失败,java.lang.ClassNotFoundException:com.sun.tools.javac.util.Context
- 有问题写在Kotlin的EditText
- 如何使用Android绑定库和Kotlin从视图绑定onClick事件?
- 我可以有两个XML布局使用相同的视图使用Kotlin综合扩展?
- 为什么这个Android Instrumentation测试调用Activity两次创建?
- 让Snackbar向上推视图