jackson未能对Kotlin数据类进行反序列化

我正在使用Jackson反序列化Kotlin数据类。 我正在使用jackson-kotlin-module但是Jackson给了我下面的错误:

无法构造MyClass的实例:找不到合适的构造函数,无法从Object值反序列化

我已经尝试添加proguard规则来保留我的类,它的构造函数没有任何成功。

如果我添加一个规则来保存所有的kotlin类,错误就会消失。

有任何想法吗?

经过大量的试验和错误,我发现Proguard从我的数据类剥离了kotlin.Metadata注释。

添加以下规则可修复此问题:

 -keep class kotlin.Metadata { *; } 

我还发现添加一个规则,以保持我的数据类的综合方法也需要:

 -keepclassmembers public class com.mypackage.** { public synthetic ; }