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