在YAML文件中重复

时间:2017-09-14 22:30:13

标签: java spring spring-mvc spring-boot yaml

我想将我的页面地址放在yml文件中,但我对此有疑问。

 path:
  api.v1.0: /api/v1.0
  api.v1.0:
    register: ${path.api.v1.0}/register
    register:
      token: ${path.api.v1.0.register}/token/{token}

在编译过程中出现了这样的错误

    Caused by: org.yaml.snakeyaml.parser.ParserException: while parsing MappingNode
 in 'reader', line 5, column 5:
        register: ${path.api.v1.0}/register
        ^
Duplicate key: register
 in 'reader', line 39, column 1:

为什么不起作用?

PS:这是在yml或属性文件中放置地址的好方法吗?它是专业的吗?

1 个答案:

答案 0 :(得分:0)

它的好坏取决于预期用途,因此我无法在那里增加太多价值。但重复是因为您的对象有重复的键。您可能希望将数组视为数据结构:

paths: 
  - 
    name: api.v1.0
    path: /api/v1.0
    paths:
      -
        name: register
        path: "${path.api.v1.0}/register"
      - 
        name: register-token
        path: "${path.api.v1.0.register}/token/{token}"