【发布时间】:2020-11-25 20:03:42
【问题描述】:
序列化数据类中的ZonedDateTime 字段时出现以下错误:
Type mismatch: inferred type is KClass<ZonedDateTimeSerializer> but KClass<out KSerializer<*>> was expected
这是我的课:
import com.fasterxml.jackson.datatype.jsr310.ser.ZonedDateTimeSerializer
import kotlinx.serialization.Serializable
import java.time.ZonedDateTime
@Serializable
data class MyClass(
@Serializable(ZonedDateTimeSerializer::class)
val time: ZonedDateTime
)
如何在 Kotlin 中序列化 ZonedDateTime?
【问题讨论】:
-
ZonedDateTimeSerializer是否实现KSerializer? -
没有。那是杰克逊的课。
-
好吧,那当然不行。
-
另见最近发布的 org.jetbrains.kotlinx:kotlinx-datetime:0.2.0 支持 kotlinx.serialization blog.jetbrains.com/kotlin/2021/05/kotlinx-datetime-0-2-0-is-out