SpringBoot的2.4.0之后,对多文件的yml配置进行了更新,旧方式的配置都被划上一道线,也就是说被废弃了,不过还可以正常使用。而properties配置方式没有变化。
2.4.0之前
spring: profiles: active: dev --- spring: profiles: test server: port: 1111 --- spring: profiles: dev server: port: 2222
2.4.0之后
spring: profiles: active: dev --- spring: config: activate: on-profile: test server: port: 1111 --- spring: config: activate: on-profile: dev server: port: 2222
即环境配置使用 spring.config.activate.on-profile 替换了 spring.profiles
on-profile: dev 指,当环境是dev时,配置生效,非dev时配置不生效
spring.active, spring.include 并没有改变
配置组应用
spring: profiles: # 默认环境 include: database,runtime group: # test 环境 test: databasetest,runtimetest # prod 环境 prod: databaseprod,runtimeprod
若在新旧版本应急其间或包版本升级,短时间不方便升级为新的模式,则可以通过配置指定为旧的的处理逻辑,但此模式不建议长时使用。
通过如下参数进行配置:
spring.config.use-legacy-processing = true
.