使用 SnakeYaml 解析时忽略来自 yaml 的字段(无法在类上找到属性)
Posted
技术标签:
【中文标题】使用 SnakeYaml 解析时忽略来自 yaml 的字段(无法在类上找到属性)【英文标题】:Ignore fields from yaml when parsing it using SnakeYaml (Unable to find property on class) 【发布时间】:2015-07-21 15:15:30 【问题描述】:我正在使用 SnakeYaml 来解析 yaml 文件,是否可以忽略 yaml 文件中的属性?
【问题讨论】:
【参考方案1】:我找到了:)
Representer representer = new Representer();
representer.getPropertyUtils().setSkipMissingProperties(true);
Yaml yaml = new Yaml(new Constructor(MyClass.class),representer);
【讨论】:
如果您有一个调用super.getProperty(type, name)
的自定义 PropertyUtils
,则此解决方案不起作用。在这种情况下,您需要将调用包装在 try-catch
块中,如果失败则返回一个空的 Property
对象(:以上是关于使用 SnakeYaml 解析时忽略来自 yaml 的字段(无法在类上找到属性)的主要内容,如果未能解决你的问题,请参考以下文章
无法解析类org.yaml.snakeyaml.Yaml @Grab('org.yaml:snakeyaml:1.17')Jenkins管道
使用 SnakeYAML 从不受信任的来源加载 YAML 文件时会发生啥?