Maven實現多環境配置切換
阿新 • • 發佈:2019-05-30
一. 問題由來
開發環境、測試環境、生產環境--------我們的軟體在不同的環境中,系統引數和配置可能會不一樣,比如資料來源配置、日誌檔案配置、以及一些軟體執行過程中的基本配置,那每次我們將軟體部署到不同的環境時,都需要修改相應的配置檔案?Maven提供了一種方便的解決這種問題的方案,就是profile功能。
二. Maven實現多環境配置切換的步驟
2.1 定義多環境配置檔案
按照不同環境,我們讀取不同的配置檔案,假設有以下定義:
profile | 檔名 | 配置檔案內容 |
---|---|---|
dev | application-dev.yml | server.port 8090 |
test | application-test.yml | server.port 8091 |
prod | application-prod.yml | server.port 8092 |
完成後目錄結構如下圖所示
2.2 定義執行引數
根據Spring Boot規範,我們修改application.yml檔案新增以下內容
2.3 修改Maven pom配置
修改父工程pom.xml檔案,新增以下配置
<!--profile配置--> |
pom多環境配置中我們的核心是利用編譯過程中,讀取不同的配置檔案,然後再由spring去讀取引數配置。而這裡我們利用到變數${profileActive}
2.4 啟動專案以驗證
按照以上操作步驟完成後:
1.在開發過程中,我們可以在Maven檢視選擇你當前的profile。
然後執行,例如當前dev環境配置的系統執行埠是8089。那麼啟動控制檯列印如下資訊則表配置成功。
2.在實際生產環境釋出的時候,我們執行一下命令即可
mvn clean package -dev |