1. 程式人生 > 其它 >本章講講spring boot 專案被jenkins打包到測試環境和正式環境後怎麼自動切換配置檔案的

本章講講spring boot 專案被jenkins打包到測試環境和正式環境後怎麼自動切換配置檔案的

技術標籤:spring boot不同環境配置切換jenkensspring boot

前言
我們的spring boot專案一般會有三種配置application-dev.properties、application-test.properties、application-prd.properties,有的公司會更多,這種做的目的是為了在切換不同環境的時候使用不同的配置檔案,防止多個環境使用同一個配置檔案改過去改過來出現問題。

像我們公司的環境配置有8種
在這裡插入圖片描述

內容
目前企業中很多都是在用jenkins打包專案到測試環境和正式環境,jenkins在打包的時候可以指定打包環境使用哪種配置。
在jenkins中指定一下執行時使用的環境


mvn clean package -U -Ptest 使用test配置
mvn clean package -U -Pdev 使用dev配置
mvn clean package -U -Pprd 使用prd配置
mvn clean package -U -Popen 使用open配置

相信大家能夠看出來了-P後面就是指定環境配置id,那麼這個id會作用在哪呢?
這個id會作用在專案中的pom.xml檔案中,只要我們的pom.xml檔案中有profiles,在maven打包的時候就會把id傳到這裡面,如果能夠匹配上就會使用對應</env中配置的檔案。當然這只是其中一種辦法,還有很多其他辦法,我這裡就不介紹了。

 <profiles>
        <profile>
            <id>dev</id>
            <activation>
                <activeByDefault>true</activeByDefault>
            </activation>
            <properties>
                <spring.profiles.active>dev</spring.profiles.
active> <env>bootstrap-dev.properties</env> </properties> </profile> <profile> <id>test</id> <activation> <activeByDefault>false</activeByDefault> </activation> <properties> <spring.profiles.active>test</spring.profiles.active> <env>bootstrap-test.properties</env> </properties> </profile> <profile> <id>prd</id> <activation> <activeByDefault>false</activeByDefault> </activation> <properties> <spring.profiles.active>prd</spring.profiles.active> <env>bootstrap-prd.properties</env> </properties> </profile> </profiles>