1. 程式人生 > >spring-boot結合maven配置不同環境的profile

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: @[email protected]
說明:如果想要獲取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