
大家好,我是月夜枫,本来想着一篇文章写完的,太久没更新了,凑个数吧,嘻嘻。
背景
- 将公司的项目升级到3.2.5后,需要在本地环境、开发环境、测试环境和生产环境做不同的配置文件,结果发现在特定配置文件,比如application-dev.yml中不再能使用spring.profiles.include了,因此去了解了一下Spring Boot的版本变化,并以此篇记录一下方便以后查阅。
Spring Boot 2.4 - Spring Boot 3.0的兼容方案
- 在Spring Boot 2.4后如果想保持原来的配置方式,可以使用以下配置进行兼容:
XML
spring:
config:
use-legacy-processing: true
- 但要注意的是,Spring Boot 3.0后这个兼容方式就被移除了,因此我只能使用新的配置方式。
XML
spring:
profiles:
active: dev
group:
dev:
- dev-applet
sit:
- sit-applet
prod:
- prod-applet
正确的解决方法
- 在Spring Boot 2.4后,可以在application.yml中使用Profile Groups,指定每个环境加载哪些特定配置文件,这样实际也方便管理。