例如,我有诸如Spring Boot Actuator使用的代码之类的设置。
management:
server:
port: 60001
security:
enabled: false
我发现如果我写这个设置时会出错。例如(下面的代码):
management:
server:
port: 60001
security:
enabled: fase # wrong typed a `false` word
Spring Boot不会执行任何操作,并且应用程序将成功构建。
答案 0 :(得分:0)
只要内核中存在 @ConfigurationProperties ,Spring Boot就会验证数据。问题是您的@ConfigurationProperties可能在spring boot版本之前不存在或已被弃用。
下面是management.server
类与@ConfigurationProperties的比较。
尝试使用字符串更改端口,并使用验证数据进行弹簧引导。
还要查看 ManagementContextAutoConfiguration .class,如果您使用的是Spring Boot 2,则会看到它加载了 ManagementServerProperties 和 WebEndpointProperties
类>如果您仍然需要验证Yaml,则可以参考SnakeYAML。