java – Spring Profile包含yaml文件的问题

当团队设置websphere配置文件激活时,我正在尝试完成云配置文件也已激活.

yaml文件

   ---
    spring:
      application:
        name: kicapp
      output:
        ansi:
          enabled: ALWAYS
      profiles:
        active: local
    #server:
      #context-path: /
      #port: 8080
    #logging:
      #level:
        #org.springframework.security: DEBUG
    ---
    spring:
      profiles: local
    ---
    spring:
      profiles: unittest
    ---
    spring:
      profiles: cloud
      test: loaded
    ---
    spring:
      profiles: websphere
        include: cloud

当我设置–spring.profiles.active = websphere时,我收到以下错误

Caused by: mapping values are not allowed here in ‘reader’,line 28,
column 12:
include: cloud

最佳答案
这似乎是对SnakeYAML解析器的限制以及Spring Boot使用它的方式.由于yaml允许在带有—分隔符的单个文件中指定多个不同的文档,因此Spring分离出单独文档的方式是使用spring.profiles键,这个键应该是一个简单的结构而不是一个复杂的结构.

一个好的解决方法实际上是通过这种方式将其拆分为多个文件

具有共同内容的application.yaml,
应用程序 – <型材>使用特定于配置文件的扩展,使用此结构键spring.profiles.include将按预期工作.

相关文章

这篇文章主要介绍了spring的事务传播属性REQUIRED_NESTED的原...
今天小编给大家分享的是一文解析spring中事务的传播机制,相...
这篇文章主要介绍了SpringCloudAlibaba和SpringCloud有什么区...
本篇文章和大家了解一下SpringCloud整合XXL-Job的几个步骤。...
本篇文章和大家了解一下Spring延迟初始化会遇到什么问题。有...
这篇文章主要介绍了怎么使用Spring提供的不同缓存注解实现缓...