将 .yml 解析为对象 (Kotlin)
parse .yml as an object (Kotlin)
我有一个.yml
anchor: &my_anchor
id: my_id
name: my_name
ref: *my_anchor
这是我的class代码
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)
除了 class "Response" 的 属性 "ref" 的类型为 "LinkedHashMap" 而不是 "MyAnchor".我收到这样的消息
field ref has type MyAnchor, got java.util.LinkedHashMap
也许我应该设置一些标签?如果你能帮助我,我将不胜感激。
我找到了解决方案。问题是 class MyAnchor::class 是一个开放的。任何模型实体 class 应该是最终的
我有一个.yml
anchor: &my_anchor
id: my_id
name: my_name
ref: *my_anchor
这是我的class代码
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)
除了 class "Response" 的 属性 "ref" 的类型为 "LinkedHashMap" 而不是 "MyAnchor".我收到这样的消息
field ref has type MyAnchor, got java.util.LinkedHashMap
也许我应该设置一些标签?如果你能帮助我,我将不胜感激。
我找到了解决方案。问题是 class MyAnchor::class 是一个开放的。任何模型实体 class 应该是最终的