lunix下jar包的幾種啓動方式 親測可用

Springboot 產生jar包的幾種部署方式:

 

第一種部署形式:前臺啓動

 Java  –jar  afwcs-start-1.0.0.jar

 

這種方式部署的項目,屬於前臺部署形式,一旦頁面關閉,項目也就隨着關閉。繼續請求接口的話什麼也沒有返回,表示當前項目已經死亡。

我們關掉了xshell之類的頁面,該程序就會停掉

 

第二種部署形式:後臺啓動

網關:

nohup java -jar gateway-0.0.1.jar >gatewaylog.file 2>&1&

計算:

nohup java -jar afwcs-start-1.0.0.jar >afwcslog.file 2>&1&

 

啓動後的目錄:

啓動後產生的日誌目錄

 

這種情況啓動的項目會產生兩個log日誌:

一個gatewaylog.file一個GATEWAY-info.2019-06-12.log,而且兩個日誌的內容完全一致。

 

第三種部署方式:不要nohup日誌

所以如果我們不想要nohup日誌,我們可以直接將日誌打到黑洞裏面:nohup java -jar ***.jar --server.port=9091 >/dev/null 2>&1 &

或者:

nohup java -jar xxx.jar >/dev/null &

一般這種程序使用 &結尾。但是如果終端關閉,那麼程序也會被關閉

Linux下還有一個特殊的文件/dev/null,它就像一個無底洞,所有重定向到它的信息都會消失得無影無蹤。

網關:

nohup java -jar gateway-0.0.1.jar >/dev/null 2>&1&

計算:

nohup java -jar afwcs-start-1.0.0.jar >/dev/null 2>&1&

這種情況部署的項目,日誌在gateway目錄下面的logs中,方便查看沒有產生多餘的日誌。

解釋:其中 2> 表示把標準錯誤(stderr)重定向,尖括號後面可以跟文件名,表示要把輸出的信息寫入哪個文件(也可不寫,則默認輸出到nohup.log),或者是&1, &2,分別表示重定向到標準輸出和標準錯誤。

 

第四種:指定外置配置文件

Spring程序會按優先級從下面這些路徑來加載application.properties配置文件

 

1.當前目錄下的/config目錄

2.當前目錄

3.classpath裏的/config目錄

4.classpath 跟目錄

因此,要外置配置文件就很簡單了,在jar所在目錄新建config文件夾,然後放入配置文件,或者直接放在配置文件在jar目錄

使用jar包外面的配置文件替換項目內的配置文件:

 nohup java -jar gateway-0.0.1.jar --spring.config.location=/usr/local/jarPackage/gateways/application-dev.properties  >/dev/null 2>&1&

 

經過測試能夠正常啓動項目和跑數據。

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章