SpringBoot啟動(dòng)指定profile的多種方式
配置文件中設(shè)置
通常在公司級(jí)別的項(xiàng)目中,我們可能會(huì)寫(xiě)多個(gè)application- dev/prod.yml ,然后我們通常會(huì)在application.yml配置文件中寫(xiě)入
spring: profiles: active: dev
這里會(huì)指定激活的profile是application- dev.yml
注意:application.yml中類(lèi)似Java中的父類(lèi),其他application- dev/prod.yml會(huì)繼承這個(gè)文件,可以進(jìn)行重寫(xiě),沒(méi)有進(jìn)行重寫(xiě)的屬性我們也是能直接讀取的,比如application.yml定義了一個(gè)my.name屬性,然后我們激活的是application- dev.yml,但是我們并沒(méi)有在文件中定義這個(gè)屬性,我們?cè)诔绦蛑羞€是能夠讀取的,這里可以和Java的父子類(lèi)繼承重寫(xiě)對(duì)比
my: name: apple
注意這里可能會(huì)涉及到springboot讀取配置文件的優(yōu)先級(jí)問(wèn)題,可參考文章:SpringBoot - 配置文件加載位置與優(yōu)先級(jí)
命令行設(shè)置
1、Maven啟動(dòng)指定Profile通過(guò)-P,如mvn spring-boot:run -Ptest
,但這是Maven的Profile。
2、如果要指定spring-boot的spring.profiles.active
,則必須使用mvn spring-boot:run -Drun.profiles=test
3、如果使用命令行直接運(yùn)行jar文件,則使用java -jar -Dspring.profiles.active=test demo-0.0.1-SNAPSHOT.jar
4、如果使用開(kāi)發(fā)工具,運(yùn)行Application.java文件啟動(dòng),則增加參數(shù)--spring.profiles.active=test
IDEA中設(shè)置
1、program arguments程序參數(shù)
在Run/Debug Configurations中配置-Dspring.profiles.active=dev
優(yōu)先級(jí)比配置文件高
2、VM options虛擬機(jī)參數(shù)
在Run/Debug Configurations中配置-Dspring.profiles.active=dev
優(yōu)先級(jí)比配置文件高
3、Active profiles 參數(shù)
指定dev即可
遇到的問(wèn)題
在公司項(xiàng)目中,我下載了一個(gè)其他環(huán)境的application-ft3.yml,但是沒(méi)有放入resources文件夾下面,是通過(guò)IDEA中Run/Debug Configurations中配置讀取我自己在外部的路徑,但是由于我這個(gè)配置文件中有配置另外一個(gè)resources下面的i18n配置文件,程序中也要讀取這個(gè)i18n下面的文件,我這個(gè)application-ft3.yml的文件路徑和i18n下面的文件的相對(duì)路徑就對(duì)不上了,導(dǎo)致讀取為空?。?!
解決辦法: 將這個(gè)application-ft3.yml放入resources目錄下即可解決!所以為了避免出現(xiàn)類(lèi)似問(wèn)題,我還是推薦把配置文件放入resource下面?。?!
參考文章:
https://blog.csdn.net/weixin_40317062/article/details/82194191
https://www.huaweicloud.com/articles/81095cfdb86cd1a3a46241bc69ae1d55.html
Java啟動(dòng)參數(shù)的相關(guān)問(wèn)題可以參考:
http://chabaoo.cn/article/17833.htm
到此這篇關(guān)于SpringBoot啟動(dòng)指定profile的多種方式的文章就介紹到這了,更多相關(guān)SpringBoot啟動(dòng)指定profile內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Maven中exec插件執(zhí)行Java程序的實(shí)現(xiàn)
在Maven項(xiàng)目中,可以使用Maven的插件來(lái)執(zhí)行Java程序,本文主要介紹了Maven中exec插件執(zhí)行Java程序的實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的可以了解一下2023-12-12SpringBoot整合EasyExcel的完整過(guò)程記錄
easyexcel是阿里巴巴旗下開(kāi)源項(xiàng)目,主要用于Excel文件的導(dǎo)入和導(dǎo)出處理,下面這篇文章主要給大家介紹了關(guān)于SpringBoot整合EasyExcel的完整過(guò)程,需要的朋友可以參考下2021-12-12Java繼承的問(wèn)題引導(dǎo)和測(cè)試代碼
這篇文章主要介紹了Java繼承的問(wèn)題引導(dǎo)和測(cè)試代碼,涉及繼承的概念,合成的語(yǔ)法等相關(guān)內(nèi)容,具有一定借鑒價(jià)值,需要的朋友可以參考下。2021-08-08feign之間傳遞oauth2?token的問(wèn)題及解決方案
這篇文章主要介紹了feign之間傳遞oauth2?token的問(wèn)題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-03-03idea resources目錄下的application.properties不能自動(dòng)提示問(wèn)題
這篇文章主要介紹了idea resources目錄下的application.properties不能自動(dòng)提示問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-11-11FasfDFS整合Java實(shí)現(xiàn)文件上傳下載功能實(shí)例詳解
這篇文章主要介紹了FasfDFS整合Java實(shí)現(xiàn)文件上傳下載功能實(shí)例詳解,需要的朋友可以參考下2017-08-08Android開(kāi)發(fā)簡(jiǎn)單計(jì)算器實(shí)現(xiàn)代碼
這篇文章主要介紹了Android開(kāi)發(fā)簡(jiǎn)單計(jì)算器實(shí)現(xiàn),本文放置了完整的Android開(kāi)發(fā)電腦,通過(guò)部署項(xiàng)目可以直接按到效果,希望本篇文章可以對(duì)你有所幫助2021-06-06基于java構(gòu)造方法Vector創(chuàng)建對(duì)象源碼分析
這篇文章主要介紹了java構(gòu)造函數(shù)中對(duì)Vector源碼及原理的分析,有需要的朋友可以借鑒參考下,希望可以有所幫助,祝大家早日升職加薪2021-09-09

SpringBoot2+Netty+WebSocket(netty實(shí)現(xiàn)websocket支持URL參數(shù))問(wèn)題記錄