【问题标题】:parse .yml as an object (Kotlin)将 .yml 解析为对象(Kotlin)
【发布时间】:2018-12-25 22:28:54
【问题描述】:

我有一个 .yml

anchor: &my_anchor
  id: my_id
  name: my_name

ref: *my_anchor

这是我在代码中的类

class Response {
    latenit var anchor: MyAnchor
    lateinit var ref: MyAnchor
}

open class MyAnchor {

    lateinit var id: String
    lateinit var name: String
}

这是解析文件的 SnakeYaml 代码

val result = Yaml(Constructor(Response::class.java)).loadAs(content, Response::class.java)

除了“Response”类的属性“ref”具有“LinkedHashMap”类型但不是“MyAnchor”这一事实之外,一切似乎都正常。我收到了这样的消息

field ref has type MyAnchor, got java.util.LinkedHashMap

也许我应该设置一些标签?如果你能帮助我,我将不胜感激。

【问题讨论】:

    标签: parsing kotlin yaml anchor snakeyaml


    【解决方案1】:

    我找到了解决方案。问题是 MyAnchor::class 是一个开放的类。任何模型实体类都应该是最终的

    【讨论】:

      猜你喜欢
      • 2013-11-14
      • 1970-01-01
      • 2020-07-16
      • 1970-01-01
      • 1970-01-01
      • 2022-06-10
      相关资源
      最近更新 更多