Eclipse - YAML error : Expected a 'String' but got a 'Mapping' node

Eclipse - YAML error : Expected a 'String' but got a 'Mapping' node

我正在 YAML 文件中添加自己的自定义属性。现有的 Spring 属性工作正常,但我自己的自定义属性变成黄色下划线,这会在项目中产生警告。有一个选项可以添加到元数据中,但是一旦我这样做了,警告就会变成这个错误:

Expected a 'String' but got a 'Mapping' node

这是我要添加的内容:

com:
  foo:
    bar:
      foobar:
        someString: hello
        someBoolean: true

这个 YAML 元数据存储在哪里,我如何告诉它 com 不是一个字符串,而是一个映射节点?

******编辑******

我发现元数据存储在 META-INF 文件夹中一个名为 additional-spring-configuration-metadata.json 的文件中。例如,如果我告诉 Eclipse 为 com 生成元数据,这将被添加到所述文件中:

{"properties": [{
  "name": "com",
  "type": "java.lang.String",
  "description": "A description for 'com'"
}]}

为了使 com 接受 foo 等等,您必须将 java.lang.String 更改为什么?

您好,我是上述 eclipse 插件的维护者 (https://marketplace.eclipse.org/content/yaml-editor)

通常当您在使用 yaml 编辑器插件时遇到问题,建议您在 https://github.com/de-jcup/eclipse-yaml-editor/issues

上为此创建一个问题

我试过你给出的例子,当前版本 1.6.2 没有出现错误。你确定你真的使用 Yaml-Editor 打开你的文件而不是另一个安装的编辑器吗?为确保您应该尝试通过上下文操作(例如在项目资源管理器中)在您的文件和 Open with -> Yaml Editor.

中打开您的文件

如果还有问题,请在 github 创建问题并将 link 添加到此问题。