SpringBoot框架實(shí)現(xiàn)切換啟動(dòng)開(kāi)發(fā)環(huán)境和測(cè)試環(huán)境
SpringBoot框架切換啟動(dòng)開(kāi)發(fā)環(huán)境和測(cè)試環(huán)境
目錄結(jié)構(gòu)
1.在pom.xml文件中添加插件
<profiles> <profile> <id>dev</id> <activation> <activeByDefault>true</activeByDefault> </activation> <properties> <profileActive>dev</profileActive> </properties> </profile> <profile> <id>test</id> <properties> <profileActive>test</profileActive> </properties> </profile> <profile> <id>prod</id> <properties> <profileActive>prod</profileActive> </properties> </profile> </profiles> <build> <resources> <resource> <directory>${project.basedir}/src/main/resources</directory> <filtering>true</filtering> </resource> </resources> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <executions> <execution> <goals> <goal>repackage</goal> </goals> </execution> </executions> </plugin> </plugins> </build>
注意:
<activation> <activeByDefault>true</activeByDefault> </activation>
放在dev下,默認(rèn)以開(kāi)發(fā)環(huán)境啟動(dòng),如上所示;如果想以測(cè)試環(huán)境啟動(dòng),把以上代碼剪切到test下即可
2.添加配置文件application.yml
用于后期查看是使用哪種環(huán)境啟動(dòng)的項(xiàng)目
3.添加測(cè)試環(huán)境的配置文件application-test.yml
將數(shù)據(jù)庫(kù)、dubbo、redis的開(kāi)發(fā)地址,切換成測(cè)試地址即可。
4.將項(xiàng)目打包成jar包的快捷方式
我們將項(xiàng)目打包成jar包,將包含啟動(dòng)文件(BmsApplication)的子項(xiàng)目(scm-bms-starter)進(jìn)行打包即可
這就是我們想要的jar包
下面我們測(cè)試一下,jar包是否可以運(yùn)行
首先,在cmd中,將目錄切換到j(luò)ar包的存放路徑
然后,運(yùn)行jar包
命令1:java -jar scm-bms-starter-0.0.1-SNAPSHOT.jar(windows)
命令2:nohup java -jar scm-bms-starter-0.0.1-SNAPSHOT.jar &(linux)
兩者的區(qū)別:
命令1會(huì)將啟動(dòng)過(guò)程在控制臺(tái)輸出,當(dāng)關(guān)閉cmd的時(shí)候,進(jìn)程自動(dòng)被殺死
命令2會(huì)在后臺(tái)啟動(dòng)項(xiàng)目,并將啟動(dòng)過(guò)程輸入到一個(gè)默認(rèn)的文件中(nohup.out),該進(jìn)程不會(huì)隨著控制臺(tái)的關(guān)閉而結(jié)束,需要使用kill -15 pid殺死進(jìn)程
SpringBoot動(dòng)態(tài)切換環(huán)境
一般我們?cè)陂_(kāi)發(fā)中會(huì)有 開(kāi)發(fā)、測(cè)試、預(yù)生產(chǎn)、生產(chǎn)環(huán)境的分類(lèi),這個(gè)時(shí)候我們會(huì)遇到在項(xiàng)目部署打包的時(shí)候需要?jiǎng)討B(tài)的去切換環(huán)境,怎樣去實(shí)現(xiàn)動(dòng)態(tài)環(huán)境的切換呢?好了,廢話不多說(shuō)直接整干貨。
1、我們?cè)趕pringboot的pom.xml中添加項(xiàng)目中的環(huán)境配置
如圖
我們這邊先簡(jiǎn)單介紹三套環(huán)境的切換,如圖所示,當(dāng)我們添加三套環(huán)境的profile配置之后,我們的第一階段的任務(wù)就完成了,即環(huán)境的配置。
2、環(huán)境配置完成之后我們有三套環(huán)境
我們需要copy出三份application-xxx.properties文件出來(lái),放在springboot默認(rèn)配置application.properties的同級(jí)目錄下。主配置文件application.properties只留一個(gè)spring.profiles.active=@env@的配置,此處evn這個(gè)變量取得上圖profile中標(biāo)簽<evn>的值,他的值關(guān)系到你copy的三份配置文件xxx的命令,這個(gè)地方需要注意。其他的三份application-xxx.properties文件,我們?yōu)榱藴y(cè)試就只改他們的tomcat的端口號(hào)不一樣即可大功告成。附圖:
主配置文件:
開(kāi)發(fā)環(huán)境配置文件:
好了,其他的配置文件就不多加贅述,為了方便看效果只是簡(jiǎn)單的改了啟動(dòng)的tomcat的端口號(hào)。
3、看效果,我們選擇開(kāi)發(fā)環(huán)境的配置啟動(dòng),注意看啟動(dòng)信息。附圖:
ok,至此,動(dòng)態(tài)切換已完成,朋友們可自行嘗試。以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Java 數(shù)據(jù)結(jié)構(gòu)與算法系列精講之環(huán)形鏈表
無(wú)論是靜態(tài)鏈表還是動(dòng)態(tài)鏈表,有時(shí)在解決具體問(wèn)題時(shí),需要我們對(duì)其結(jié)構(gòu)進(jìn)行稍微地調(diào)整。比如,可以把鏈表的兩頭連接,使其成為了一個(gè)環(huán)狀鏈表,通常稱(chēng)為循環(huán)鏈表2022-02-02mac系統(tǒng)剛安裝的idea打不開(kāi)的問(wèn)題及解決
這篇文章主要介紹了mac系統(tǒng)剛安裝的idea打不開(kāi)的問(wèn)題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-09-09Spring Boot編寫(xiě)攔截器教程實(shí)例解析
這篇文章主要介紹了Spring Boot編寫(xiě)攔截器教程實(shí)例解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-06-06Spring事務(wù)傳播屬性和隔離級(jí)別詳細(xì)介紹
這篇文章主要介紹了Spring事務(wù)傳播屬性和隔離級(jí)別詳細(xì)介紹,同時(shí)涉及傳播行為介紹,超時(shí)設(shè)置等相關(guān)內(nèi)容,需要的朋友可以參考下。2017-09-09Springboot內(nèi)置Tomcat配置參數(shù)調(diào)優(yōu)方式
這篇文章主要介紹了Springboot內(nèi)置Tomcat配置參數(shù)調(diào)優(yōu)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-06-06