SpringBoot多環(huán)境開發(fā)該如何配置
一、配置多環(huán)境
如下例:
# 當前激活的環(huán)境為 dev
spring:
profiles:
active: dev
# 日志等級
logging:
level:
root: info
---
# 開發(fā)環(huán)境
spring:
config:
activate:
on-profile: dev
server:
port: 81
---
#生產(chǎn)環(huán)境
spring:
config:
activate:
on-profile: pro
server:
port: 80
---
# 測試環(huán)境
spring:
config:
activate:
on-profile: test
server:
port: 82
在 yml 配置文件中,用三個橫線分隔不同的環(huán)境,spring.config.activate.on-profile 屬性表示當前環(huán)境名稱,沒有設(shè)置環(huán)境名稱的部分,會作為默認配置,被所有環(huán)境采用,比如上例中的日志等級
spring.config.activate.on-profile 也可以寫成 spring.profiles 更簡便些,如下例:
# 開發(fā)環(huán)境
spring:
profiles: dev
但這個寫法已經(jīng)過時了,會被警告
二、激活環(huán)境
1. spring.profiles.active屬性
將 spring.profiles.active 屬性配置在沒有環(huán)境名稱的部分,即可激活指定環(huán)境,如前一部分中的樣例
也可以指定多個環(huán)境,用逗號分隔或者寫成數(shù)組
spring:
profiles:
active: env_1, env_2
2. 命令行激活
將項目打成 jar 包,通過 jar 包運行項目時指定 spring.profiles.active 屬性值即可,如下:
java -jar 包名.jar --spring.profiles.active=env_1,env_2
激活多個環(huán)境時,逗號后不能有空格
即使 yaml 中配置了 spring.profiles.active 的值,還是會按照命令行來激活環(huán)境,因為命令行的優(yōu)先級高于配置文件,同樣的,配置文件中的其他屬性也可以通過命令行來指定
3. 讀取 pom.xml激活
Maven進階中可以過濾資源文件,使其能夠讀取 pom.xml 中的屬性
這里就是在 pom 中指定 spring.profiles.active 的值,達到激活環(huán)境的目的
yaml 配置文件中這樣寫:
spring: profiles: active: @profiles.active@
SpringBoot 項目中資源文件讀取 pom 屬性要用 @ 包裹屬性名,而不能用 ${ }
pom.xml 中這樣寫:
<properties> <profiles.active>env_1, env_2</profiles.active> </properties> <build> <resources> <resource> <directory>src/main/resources</directory> <filtering>true</filtering> </resource> </resources> </build>
如此配置,編譯以后 yaml 中的屬性值就被替換了
到此這篇關(guān)于SpringBoot多環(huán)境開發(fā)該如何配置的文章就介紹到這了,更多相關(guān)SpringBoot多環(huán)境開發(fā)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Project?Reactor源碼解析publishOn使用示例
這篇文章主要為大家介紹了Project?Reactor源碼解析publishOn使用示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-08-08break和continue的作用和區(qū)別解析(案例分析)
break和continue都是用來控制循環(huán)結(jié)構(gòu)的,主要作用是停止循環(huán),這篇文章主要介紹了break和continue的作用和區(qū)別,需要的朋友可以參考下2023-03-03Java打包之后讀取Resources下的文件失效原因及解決方法
這篇文章主要給大家介紹了Java打包之后讀取Resources下的文件失效的問題分析和解決方法,文中通過代碼示例和圖文結(jié)合給大家講解非常詳細,需要的朋友可以參考下2023-12-12