Spring Boot結(jié)合IDEA自帶Maven插件如何快速切換profile
一、前言
IDEA
是目前 Java
開發(fā)者中使用最多的開發(fā)工具,它有著簡(jiǎn)約的設(shè)計(jì)風(fēng)格,強(qiáng)大的集成工具,便利的快捷鍵。
在項(xiàng)目項(xiàng)目整個(gè)開發(fā)運(yùn)維周期中,我們的的項(xiàng)目往往需要根據(jù)不同的環(huán)境,使用不同的文件配置。
比如以下部分:
- 默認(rèn):
application.properties/yml
- 共用配置:
application-common.properties/yml
- 開發(fā)環(huán)境:
application-dev.properties/yml
- 生產(chǎn)環(huán)境:
application-prod.properties/yml
- 測(cè)試環(huán)境:
application-test.properties/yml
在實(shí)際使用中通過在application.yml
文件中配置:
spring: profiles: active: dev
或application.properties
文件中配置:
spring.profiles.active=dev
置后Spring Boot
會(huì)激活application-${active}.properties/yml
的配置文件。
如此一來每次我們需要切換環(huán)境時(shí)只需要修改此配置即可。但此方式也明細(xì)的不足,比如:每次切換環(huán)境時(shí)都需要修改此配置,在修改后也存在文件誤傳Git
的風(fēng)險(xiǎn),單體項(xiàng)目來說尚可接受,但對(duì)于Spring Cloud
微服務(wù)項(xiàng)目而言操作就很麻煩了。
二、配置詳情
結(jié)合IDEA
自帶的maven
插件來實(shí)現(xiàn)不同配置的切換,每次切換環(huán)境只要勾選就行了。
2.1 pom.xml修改
新增以下內(nèi)容:
<build> <resources> <resource> <directory>src/main/resources</directory> <!-- 指定目錄下的文件通過maven過濾器 --> <filtering>true</filtering> </resource> </resources> </build> <profiles> <profile> <id>dev</id> <properties> <!-- 環(huán)境標(biāo)識(shí),需要與配置文件的名稱相對(duì)應(yīng) --> <profile.active>dev</profile.active> <nacos.username>nacos</nacos.username> <nacos.password>nacos</nacos.password> </properties> <activation> <!-- 默認(rèn)環(huán)境 --> <activeByDefault>true</activeByDefault> </activation> </profile> <profile> <id>test</id> <properties> <!-- 環(huán)境標(biāo)識(shí),需要與配置文件的名稱相對(duì)應(yīng) --> <profile.active>test</profile.active> <nacos.username>nacos</nacos.username> <nacos.password>nacos</nacos.password> </properties> </profile> </profiles>
Maven
過濾器會(huì)替換文件中的占位符@變量名@
,可以查看編譯后的文件,原本的占位符被變量值所替代。
2.2 bootstrap.yml/application.yml修改
spring: profiles: active: @profile.active@
注:占位符 ‘@maven中配置的變量名@’,我的名稱為
profile.active
到此這篇關(guān)于Spring Boot結(jié)合IDEA自帶Maven插件快速切換profile的文章就介紹到這了,更多相關(guān)Spring Boot切換profile內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- idea創(chuàng)建SpringBoot項(xiàng)目時(shí)Type選maven?project和maven?pom有何區(qū)別
- IDEA創(chuàng)建SpringBoot的maven項(xiàng)目的方法步驟
- 解決IDEA springboot"spring-boot-maven-plugin"報(bào)紅問題
- IDEA2020.2創(chuàng)建springboot項(xiàng)目卡死在reading maven project的問題
- idea將maven項(xiàng)目改成Spring boot項(xiàng)目的方法步驟
- spring boot idea maven依賴找不到問題處理方法
相關(guān)文章
Windows系統(tǒng)中Java調(diào)用cmd命令及執(zhí)行exe程序的方法
這篇文章主要介紹了Windows系統(tǒng)中Java調(diào)用cmd命令及執(zhí)行exe程序的方法,主要用到了IOException類,需要的朋友可以參考下2016-03-03解決使用RestTemplate時(shí)報(bào)錯(cuò)RestClientException的問題
這篇文章主要介紹了解決使用RestTemplate時(shí)報(bào)錯(cuò)RestClientException的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-08-08解決Spring session(redis存儲(chǔ)方式)監(jiān)聽導(dǎo)致創(chuàng)建大量redisMessageListenerConta
這篇文章主要介紹了解決Spring session(redis存儲(chǔ)方式)監(jiān)聽導(dǎo)致創(chuàng)建大量redisMessageListenerContailner-X線程問題,需要的朋友可以參考下2018-08-08Java編程實(shí)現(xiàn)軌跡壓縮之Douglas-Peucker算法詳細(xì)代碼
這篇文章主要介紹了Java編程實(shí)現(xiàn)軌跡壓縮之Douglas-Peucker算法詳細(xì)代碼,具有一定借鑒價(jià)值,需要的朋友可以參考。2017-11-11Jmeter post上傳文件實(shí)現(xiàn)過程詳解
這篇文章主要介紹了Jmeter post上傳文件實(shí)現(xiàn)過程詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-08-08BigDecimal的toString()、toPlainString()和toEngineeringString()區(qū)
使用BigDecimal進(jìn)行打印的時(shí)候,經(jīng)常會(huì)對(duì)BigDecimal提供的三個(gè)toString方法感到好奇,以下整理3個(gè)toString方法的區(qū)別及用法,需要的朋友可以參考下2023-08-08Java實(shí)戰(zhàn)之用hutool-db實(shí)現(xiàn)多數(shù)據(jù)源配置
在微服務(wù)搭建中經(jīng)常會(huì)使用到多數(shù)據(jù)庫情形這個(gè)時(shí)候,下面這篇文章主要給大家介紹了關(guān)于Java實(shí)戰(zhàn)之用hutool-db實(shí)現(xiàn)多數(shù)據(jù)源配置的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-12-12Java如何實(shí)現(xiàn)N叉樹數(shù)據(jù)結(jié)構(gòu)
這篇文章主要介紹了Java如何實(shí)現(xiàn)N叉樹數(shù)據(jù)結(jié)構(gòu)問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-05-05hibernate中HQL如何調(diào)用自定義函數(shù)
這篇文章主要介紹了hibernate中HQL如何調(diào)用自定義函數(shù)問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-09-09