spring-boot結合maven配置不同環境的profile
阿新 • • 發佈:2019-01-01
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.yml和application-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