如何在YML的值中正确添加并使用冒号「:」
YAML值中使用冒号的正确处理方案
报错是YAML语法特性导致的:YAML中
键: 值的分隔规则是冒号后紧跟空格/换行时,会将前半部分识别为映射键,你写的import: configserver:会被解析器误认为configserver是一个新的子键,而非import配置的字符串值,因此触发语法错误。
可用的解决方法
- 方法1:使用单引号包裹包含冒号的字符串值
单引号内的所有特殊字符都会被识别为普通文本,无需额外转义,是最推荐的写法:spring: application: name: app profiles: active: DEV config: import: 'configserver:' - 方法2:使用双引号包裹包含冒号的字符串值
效果和单引号一致,区别是双引号内可以识别\开头的转义字符:spring: config: import: "configserver:" - 补充说明:如果冒号出现在值的中间且后面没有紧跟空格,不需要额外处理,比如下方写法是合法的:
只有当冒号出现在值末尾、或者冒号后紧跟的空格属于值的一部分时,才需要用引号包裹。test: https://www.example.com
内容的提问来源于stack exchange,提问作者Thirumal
相关产品推荐
相关产品推荐

