溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

如何用SpringBoot框架實(shí)現(xiàn)切換啟動開發(fā)環(huán)境和測試環(huán)境

發(fā)布時間:2021-12-02 09:57:45 來源:億速云 閱讀:404 作者:iii 欄目:開發(fā)技術(shù)

本篇內(nèi)容介紹了“如何用SpringBoot框架實(shí)現(xiàn)切換啟動開發(fā)環(huán)境和測試環(huán)境”的有關(guān)知識,在實(shí)際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!

SpringBoot框架切換啟動開發(fā)環(huán)境和測試環(huán)境

目錄結(jié)構(gòu)

如何用SpringBoot框架實(shí)現(xiàn)切換啟動開發(fā)環(huán)境和測試環(huán)境

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)以開發(fā)環(huán)境啟動,如上所示;如果想以測試環(huán)境啟動,把以上代碼剪切到test下即可

2.添加配置文件application.yml

用于后期查看是使用哪種環(huán)境啟動的項目

如何用SpringBoot框架實(shí)現(xiàn)切換啟動開發(fā)環(huán)境和測試環(huán)境

3.添加測試環(huán)境的配置文件application-test.yml

將數(shù)據(jù)庫、dubbo、redis的開發(fā)地址,切換成測試地址即可。

4.將項目打包成jar包的快捷方式

我們將項目打包成jar包,將包含啟動文件(BmsApplication)的子項目(scm-bms-starter)進(jìn)行打包即可

如何用SpringBoot框架實(shí)現(xiàn)切換啟動開發(fā)環(huán)境和測試環(huán)境

如何用SpringBoot框架實(shí)現(xiàn)切換啟動開發(fā)環(huán)境和測試環(huán)境

這就是我們想要的jar包

如何用SpringBoot框架實(shí)現(xiàn)切換啟動開發(fā)環(huán)境和測試環(huán)境

下面我們測試一下,jar包是否可以運(yùn)行

首先,在cmd中,將目錄切換到j(luò)ar包的存放路徑

如何用SpringBoot框架實(shí)現(xiàn)切換啟動開發(fā)環(huán)境和測試環(huán)境

然后,運(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會將啟動過程在控制臺輸出,當(dāng)關(guān)閉cmd的時候,進(jìn)程自動被殺死

如何用SpringBoot框架實(shí)現(xiàn)切換啟動開發(fā)環(huán)境和測試環(huán)境

命令2會在后臺啟動項目,并將啟動過程輸入到一個默認(rèn)的文件中(nohup.out),該進(jìn)程不會隨著控制臺的關(guān)閉而結(jié)束,需要使用kill -15 pid殺死進(jìn)程

SpringBoot動態(tài)切換環(huán)境

一般我們在開發(fā)中會有 開發(fā)、測試、預(yù)生產(chǎn)、生產(chǎn)環(huán)境的分類,這個時候我們會遇到在項目部署打包的時候需要動態(tài)的去切換環(huán)境,怎樣去實(shí)現(xiàn)動態(tài)環(huán)境的切換呢?好了,廢話不多說直接整干貨。

1、我們在springboot的pom.xml中添加項目中的環(huán)境配置

如圖

如何用SpringBoot框架實(shí)現(xiàn)切換啟動開發(fā)環(huán)境和測試環(huán)境

我們這邊先簡單介紹三套環(huán)境的切換,如圖所示,當(dāng)我們添加三套環(huán)境的profile配置之后,我們的第一階段的任務(wù)就完成了,即環(huán)境的配置。

2、環(huán)境配置完成之后我們有三套環(huán)境

我們需要copy出三份application-xxx.properties文件出來,放在springboot默認(rèn)配置application.properties的同級目錄下。主配置文件application.properties只留一個spring.profiles.active=@env@的配置,此處evn這個變量取得上圖profile中標(biāo)簽<evn>的值,他的值關(guān)系到你copy的三份配置文件xxx的命令,這個地方需要注意。其他的三份application-xxx.properties文件,我們?yōu)榱藴y試就只改他們的tomcat的端口號不一樣即可大功告成。附圖:

主配置文件:

如何用SpringBoot框架實(shí)現(xiàn)切換啟動開發(fā)環(huán)境和測試環(huán)境

開發(fā)環(huán)境配置文件:

如何用SpringBoot框架實(shí)現(xiàn)切換啟動開發(fā)環(huán)境和測試環(huán)境

好了,其他的配置文件就不多加贅述,為了方便看效果只是簡單的改了啟動的tomcat的端口號。

3、看效果,我們選擇開發(fā)環(huán)境的配置啟動,注意看啟動信息。附圖:

如何用SpringBoot框架實(shí)現(xiàn)切換啟動開發(fā)環(huán)境和測試環(huán)境

“如何用SpringBoot框架實(shí)現(xiàn)切換啟動開發(fā)環(huán)境和測試環(huán)境”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI