springboot jar包外置配置文件的解決方法
為什么要搞個(gè)解決方案呢?按照網(wǎng)上教程,spring boot項(xiàng)目中,配置文件有優(yōu)先級(jí),其中,放在根目錄下的config文件夾中優(yōu)先級(jí)最高;根目錄下次之;然后是resources/config/;resources/下優(yōu)先級(jí)最低。而加載順序剛好反過來,resources/下最先加載,而/config/最后加載。然后在命令行方式下,指定一下這個(gè)配置文件的路徑,就可以了,云云。
也許事實(shí)就是如此的吧,但我試來試去,總不成功,系統(tǒng)死活都要讀resources/下,這個(gè)優(yōu)先級(jí)最低的配置文件。
這對(duì)于用 jar包 方式運(yùn)行的項(xiàng)目來說,就很痛苦了。每次部署的時(shí)候,都要將里面的配置文件替換,非常繁瑣。我不知道為什么我的JAR包用不了外置配置文件,也許是代碼里含有
@PropertySource(value = "classpath:myconfig.properties",encoding = "UTF-8")
這樣的語句;
又或許是含有
@Scheduled(cron = "${ins.ship-interval}")
這樣的語句。說起來也是心累,搞不清這里面的加載順序。
一時(shí)之間沒法解決,所以先換一種方式,每次運(yùn)行系統(tǒng)前,用jar命令,將相應(yīng)的配置文件替換jar包里的。
命令如下:
#將當(dāng)前目錄下 BOOT-INF/classes/application.properties 替換 jar包里 BOOT-INF/classes/application.properties #這個(gè)命令也是醉了,為啥源文件與目標(biāo)文件路徑要一致呢,可能是為了簡(jiǎn)單吧 jar uf spider-0.0.1-SNAPSHOT.jar BOOT-INF/classes/application.properties #好了,可以放心運(yùn)行了 java -jar spider-0.0.1-SNAPSHOT.jar
簡(jiǎn)單粗暴,但還可以用。
到此這篇關(guān)于springboot jar包外置配置文件解決方法的文章就介紹到這了,更多相關(guān)springboot jar包外置配置文件內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Spring?Boot整合持久層之JdbcTemplate多數(shù)據(jù)源
持久層是JavaEE中訪問數(shù)據(jù)庫的核心操作,SpringBoot中對(duì)常見的持久層框架都提供了自動(dòng)化配置,例如JdbcTemplate、JPA 等,MyBatis 的自動(dòng)化配置則是MyBatis官方提供的。接下來分別向讀者介紹Spring Boot整合這持久層技術(shù)中的整合JdbcTemplate2022-08-08mybatis升級(jí)mybatis-plus時(shí)踩到的一些坑
這篇文章主要給大家介紹了關(guān)于mybatis升級(jí)mybatis-plus時(shí)踩到的一些坑,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09Java?超詳細(xì)講解數(shù)據(jù)結(jié)構(gòu)中的堆的應(yīng)用
堆首先是一個(gè)完全二叉樹,堆分為小根堆和大根堆。小根堆,所有結(jié)點(diǎn)的左右子節(jié)點(diǎn)都不小于根節(jié)點(diǎn);大根堆,所有結(jié)點(diǎn)的左右子節(jié)點(diǎn)都不大于根節(jié)點(diǎn)。優(yōu)先級(jí)隊(duì)列(priorityQueue)底層就是一個(gè)小根堆2022-04-04JavaWeb動(dòng)態(tài)導(dǎo)出Excel可彈出下載
這篇文章主要介紹了JavaWeb動(dòng)態(tài)導(dǎo)出Excel,對(duì)Excel可彈出進(jìn)行下載操作,感興趣的小伙伴們可以參考一下2016-03-03詳解Java中Dijkstra(迪杰斯特拉)算法的圖解與實(shí)現(xiàn)
Dijkstra(迪杰斯特拉)算法是典型的單源最短路徑算法,用于計(jì)算一個(gè)節(jié)點(diǎn)到其他所有節(jié)點(diǎn)的最短路徑。本文將詳解該算法的圖解與實(shí)現(xiàn),需要的可以參考一下2022-05-05