package main;
import lombok.Data;
import lombok.experimental.Accessors;
@Data
@Accessors(chain = true)
public class YamlConfig {
private String text;
}
public static void loadYaml(){
Yaml yaml = new Yaml(new Constructor(YamlConfig.class));
YamlConfig config = yaml.load("text: testText");
log.info("text is {}",config.getText());
}
Exception in thread "main" Cannot create property=text for JavaBean=YamlConfig(text=null)
in 'string', line 1, column 1:
text: testText
^
No writable property 'text' on class: main.YamlConfig
in 'string', line 1, column 7:
text: testText
^
at org.yaml.snakeyaml.constructor.Constructor$ConstructMapping.constructJavaBean2ndStep(Constructor.java:291)
at org.yaml.snakeyaml.constructor.Constructor$ConstructMapping.construct(Constructor.java:172)
at org.yaml.snakeyaml.constructor.Constructor$ConstructYamlObject.construct(Constructor.java:332)
at org.yaml.snakeyaml.constructor.BaseConstructor.constructObjectNoCheck(BaseConstructor.java:230)
at org.yaml.snakeyaml.constructor.BaseConstructor.constructObject(BaseConstructor.java:220)
at org.yaml.snakeyaml.constructor.BaseConstructor.constructDocument(BaseConstructor.java:174)
at org.yaml.snakeyaml.constructor.BaseConstructor.getSingleData(BaseConstructor.java:158)
at org.yaml.snakeyaml.Yaml.loadFromReader(Yaml.java:491)
at org.yaml.snakeyaml.Yaml.load(Yaml.java:416)
at main.YamlLombok.loadYaml(YamlLombok.java:16)
at main.YamlLombok.main(YamlLombok.java:11)
Caused by: org.yaml.snakeyaml.error.YAMLException: No writable property 'text' on class: main.YamlConfig
at org.yaml.snakeyaml.constructor.Constructor$ConstructMapping.constructJavaBean2ndStep(Constructor.java:235)
... 10 more
当我将Bean字段切换到public时,所有工作都很好,但我真的想使用getter和setter(最好是由Lombok生成的)。
我无法解析的原因是
@Accessors(chain = true)
这会导致setter返回this而不是void。
解决方案是将snakeyaml配置为使用这些setter
yaml.setBeanAccess(BeanAccess.FIELD);
为什么我无法解析符号“r”..??。当我在这个.class文件上创建新活动时,我会遇到一个问题,为什么我不知道在创建类之后我什么也没做。(在R.Layout.Dashboard中)。(“红色R”)。 请帮帮我.
我试图将上面的文件加载到一个映射中,实体部分下的数据将映射到实体对象的集合。当我得到yaml解析器错误时,这是正确的yaml语法吗。
问题内容: 我想将YAML文档读取到自定义对象的映射(而不是map,默认情况下snakeYaml会这样做)。所以这: 将被加载到如下所示的地图中: 其中项目是: 我找不到使用snakeYaml做到这一点的方法,也找不到适合该任务的更好的库。 该文档仅包含将地图/集合嵌套在其他对象中的示例,因此您可以执行以下操作: 但是,当地图格式位于文档的根目录时,该如何定义呢? 问题答案: 您需要添加一个自定义
但是当我使用Java8时, 它抛出 java.time.format.DateTimeParseException:无法分析文本“201510”:无法从TemporalAccessor获取LocalDate:{Year=2015,MontHofYear=10},ISO类型为java.time.Format.Parsed
问题内容: 我一直在搜索,只是找不到解释或原因,但DateFormat的parse(String)方法只是不能正确解析我的String。 我正在尝试将String解析为用于HTTP标头的日期格式,并尽可能地获取String,例如: 格式为: 但是,当我使用它时,我会从中得到: 哪一个都不像我想要的,为什么现在格林尼治标准时间之后的一年?为什么不再有逗号?为什么日期在一个月之后? 我现在对此完全感到