spring-boot结合maven配置不同环境的profile

1、在spring-boot中新建配置文件


spring-boot不同环境配置文件格式为application-{profile}.yml

说明:

     如果application.yml中的配置和application-{profile}.yml相冲突时,application.yml中的配置会被覆盖掉。

2、在application.yml中增加属性

spring:
    profiles:
        active: @spring.profiles.active@
说明:如果想要获取mvn中设置的属性变量,需要使用@mvn变量名@(该方式为mvn的默认filter方式,
如果想要更改方式,可以配置自定义filter),不能使用${mvn变量名},否则无法获取到

如果你

3、在pom.xml中添加不同的profile

<profiles>
   <profile>
      <id>dev</id>
      <activation>
         <activeByDefault>true</activeByDefault>
      </activation>
      <properties>
         <!-- default Spring profiles -->
         <spring.profiles.active>dev</spring.profiles.active>
      </properties>
   </profile>
       <profile>
           <id>prod</id>
           <properties>
               <!-- default Spring profiles -->
               <spring.profiles.active>prod</spring.profiles.active>
           </properties>
       </profile>
</profiles>
说明:该配置添加了两个profile,一个dev,一个prod分别对应application-dev.ymlapplication-prod.yml

4、测试

Maven启动,指定mvn中的Profile通过-P,如mvn spring-boot:run -Pdev

Maven打包,指定mvn中的Profile通过-P,如mvn package -Pdev -DskipTests

另:

如果想要自定过滤器,可以使用mvn的maven-resources-plugin插件,具体说明参考:

http://maven.apache.org/plugins/maven-resources-plugin/index.html


猜你喜欢

转载自blog.csdn.net/jisu30miao1225/article/details/80745035