1. 程式人生 > >spring boot 命令列啟動的一些坑

spring boot 命令列啟動的一些坑

1.spring boot專案啟動時可以指定啟動的引數
例如: java -jar Project.jar –spring.profiles.active=test
坑:我們的配置檔案中配置了多個環境,這時我們想啟動測試環境,載入測試環境的相關配置檔案,這樣寫沒毛病吧!配置檔案用的yml檔案,這樣啟動專案無法載入指定的配置檔案,原因未知,我們可以使用下面的這句命令,指定該環境就ok了

java -jar -Dspring.profiles.active=test Project.jar

這樣就需要把你需要載入的配置檔案統統的寫進來

java -jar -Dspring.profiles
.active=test,..,.., Project.jar

2017.12.18日
今天發現一個更好的解決方法,可以使用

spring.profiles.include # 後邊跟上你要載入的配置檔案的字尾
# 例如你需要加bootstrap-hystrix.yml檔案,你可以這樣寫了
spring.profiles.include=hystrix
# 如果有多個,可以用','隔開

2.使用–spring.profiles.active=test,無論如何都沒辦法修改環境
今天我發現這個問題所在,這個其實是一個大烏龍,羞死本小鳥了.同時也是1問題中原因未知的問題所在,在springboot專案啟動的主函式中,程式碼如下

SpringApplication.run(Application.class);

我原本是這樣寫的,沒有傳遞引數args,所以無論如何也沒辦法修改環境,下面的這個是正確的

SpringApplication.run(Application.class, args);