springboot多模塊多環(huán)境配置文件問題(動態(tài)配置生產和開發(fā)環(huán)境)
第一種情況:
spring.profiles.active=環(huán)境變量

配置兩個環(huán)境的,可根據實際需要增加環(huán)境模式(開發(fā)環(huán)境dev,測試環(huán)境test,回歸壞境retu,預生產環(huán)境pre,生產環(huán)境prod,等等)
dev代表開發(fā)環(huán)境:

prod代表生產環(huán)境

pom.xml里面配置profiles:
<profiles>
<profile>
<id>dev</id>
<activation>
<!-- 默認激活-->
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<spring.profiles.active>dev</spring.profiles.active>
</properties>
</profile>
<profile>
<id>prod</id>
<properties>
<spring.profiles.active>prod</spring.profiles.active>
</properties>
</profile>
</profiles>

系統(tǒng)環(huán)境變量配置:

在本地,如果在這些文件里面配置端口和路徑:
appilacton.yml:
server:
port: 8087
servlet:
context-path: /miservice
application-dev.yml:
server:
port: 8088
servlet:
context-path: /miservice-dev
application-prod.yml:
server:
port: 8087
servlet:
context-path: /miservice
有效的是:8088那個配置。
在本地,如果分環(huán)境沒有配置,就以主環(huán)境為主:
appilacton.yml:
server:
port: 8087
servlet:
context-path: /miservice
application-prod.yml:
server:
port: 8089
servlet:
context-path: /miservice-prod
則是8087這個是有效的。
小結1:
application.yml引入配置為:
spring:
profiles:
active: ${env}
即:配置讀取順序為:application.yml>>application-dev.yml
第二種情況:
如果想多個模塊的配置文件都起作用,可將application.yml文件配置到具體的模塊去:
spring:
profiles:
active: miservice, ${env}


在application.yml和application-miservice.yml和application-dev.yml三個文件中:如果都有端口或路徑配置,則讀取application-dev.yml里面的配置,關閉application-dev.yml里面的配置則讀取application-miservice.yml里面的配置,最后讀取application.yml
里面的配置。
application.yml引入配置為:
spring:
profiles:
active: miservice, ${env}
即:配置讀取順序為:application-dev.yml>>application-miservice.yml>>application.yml
修訂一下:上面的結論是剛開始總結的,后面發(fā)現讀取順序是按文件的順序從下到上讀取的。即按結構順序
到此這篇關于springboot多模塊多環(huán)境配置文件問題(動態(tài)配置生產和開發(fā)環(huán)境)的文章就介紹到這了,更多相關springboot多模塊多環(huán)境內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
Spring Junit測試找不到SpringJUnit4ClassRunner.class的解決
這篇文章主要介紹了Spring Junit測試找不到SpringJUnit4ClassRunner.class的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-04-04

