在开发过程中,软件会面对不同的运行环境,如:dev/test/prod。软件在不同的环境下,配置可能会不一样,那么软件在部署到不同的环境就需要修改相应的配置文件,这样来回修改很麻烦。maven提供了一种解决方案,就是profile功能。
一、profile简介
profile可以使我们定义多种不同的配置文件,然后指定不同的激活条件,达到不同环境使用不同配置信息的效果。
profile定义的位置:
(1)对于特定项目的profile配置我们可以定义在改项目的pom.xml文件中。
(2)针对特定用户的profile配置可以在用户的settings.xml文件中定义profile。该文件在用户家目下的.m2目录下。
(3)全局的profile配置,是定义在maven安装目录下的conf/settings.xml文件中。
二、在springboot项目中配置不同环境下使用不同的配置文件
在springbot项目中的配置文件在resource
下或者resource/config
下,默认读取application.properties
或者application.yml
文件。准备好不同的配置文件,例如:application-dev.yml
、application-test.yml
、application-prod.yml
等,在application.yml
中配置指定激活哪个配置文件。
只需要在application.yml
中配置如下:
spring:
profiles:
active: dev #此处需要激活哪个就配置哪个即可
在启动项目时可以看见读取的时哪个配置文件的配置参数。
当然在springboot项目中也可以使用其他的方式设置默认激活的配置文件。