Scala 中的 SnakeYaml 问题
SnakeYaml issue in scala
我正在尝试了解如何将嵌套数据类型与 snakeyaml 一起使用。我无法让内部 class 正常显示
class RawEdgeTypeSpec() {
@BeanProperty var edge_type: Int = -1
@BeanProperty var weighted: String = ""
}
class RawNodeTypeSpec {
@BeanProperty var node_type: Int = -1
@BeanProperty var edge_types: List[RawEdgeTypeSpec] = List()
}
val spec3 = new RawEdgeTypeSpec()
spec3.setEdge_type(2)
spec3.setWeighted("true")
val spec2 = new RawNodeTypeSpec()
spec2.setNode_type(2)
spec2.setEdge_types(List(spec3))
val output = new Yaml().dump(spec2)
这会打印
edge_types: !!scala.collection.immutable.$colon$colon {}
node_type: 2
edge_types 无法正确识别和序列化
同样,我在反序列化 yaml 时遇到了问题
SnakeYAML 是一个不了解 Scala 的 Java 库,因此您需要使用 java.util.List[RawEdgeTypeSpec]
SnakeYAML 才能理解这是一个列表。
我正在尝试了解如何将嵌套数据类型与 snakeyaml 一起使用。我无法让内部 class 正常显示
class RawEdgeTypeSpec() {
@BeanProperty var edge_type: Int = -1
@BeanProperty var weighted: String = ""
}
class RawNodeTypeSpec {
@BeanProperty var node_type: Int = -1
@BeanProperty var edge_types: List[RawEdgeTypeSpec] = List()
}
val spec3 = new RawEdgeTypeSpec()
spec3.setEdge_type(2)
spec3.setWeighted("true")
val spec2 = new RawNodeTypeSpec()
spec2.setNode_type(2)
spec2.setEdge_types(List(spec3))
val output = new Yaml().dump(spec2)
这会打印
edge_types: !!scala.collection.immutable.$colon$colon {}
node_type: 2
edge_types 无法正确识别和序列化
同样,我在反序列化 yaml 时遇到了问题
SnakeYAML 是一个不了解 Scala 的 Java 库,因此您需要使用 java.util.List[RawEdgeTypeSpec]
SnakeYAML 才能理解这是一个列表。