我正尝试在this tutorial之后使用SnakeYAML在Kotlin中解析一个Yaml:
data class Case(val args: List<String>, val expected: String, val score: Int)
data class TestCases(val target: String, val cases: List<Case>)
val yaml = Yaml(Constructor(TestCases::class.java))
但是代码在IntelliJ中返回了这些错误
无法访问“
”:它是“构造函数”中的public / * package * /
用于在Constructor
中使用java.lang.reflect.Constructor
,并且
使用提供的参数不能调用以下函数:
在org.yaml.snakeyaml.Yaml中定义的
- 公共构造函数Yaml(dumperOptions:DumperOptions!)
在org.yaml.snakeyaml.Yaml中定义的- 公共构造函数Yaml(loadingConfig:LoaderOptions!)
在org.yaml.snakeyaml.Yaml中定义的- 公共构造函数Yaml(构造函数:BaseConstructor!)
在org.yaml.snakeyaml.Yaml中定义的- 公共构造函数Yaml(代表:代表!)
用于在Yaml
中使用org.yaml.snakeyaml.Yaml
,我认为期望BaseConstructor
中有Constructor
。
如何解决此问题?谢谢。
答案 0 :(得分:1)
我猜您正在导入错误的类。应该是org.yaml.snakeyaml.constructor.Constructor
而不是java.lang.reflect.Constructor
。