springboot linux啟動方式


手動啟動

java -Xms128m -Xmx256m -Xdebug -Xrunjdwp:server=y,transport=dt_socket,address=8081,suspend=n 
-jar /data/app/test.jar --spring.profiles.active=dev > catalina.out 2>&1 &

 

 
        

 

參數說明:

  • -Xms128m 設置的是JVM堆最小內存為128m
  • -Xmx256m 設置的是JVM堆最大內存為256m
  • 這里個問題是-Xmx指定的內存不包括jvm運行中使用的本地內存,所以如果有NIO等涉及到本地內存的情況時,該java進程占用的總內存會超過-Xmx設定的數值
  • -Xdebug -Xrunjdwp:server=y,transport=dt_socket,address=8081,suspend=n
  • 設置debug模式,允許tomcat遠程連接服務器調試,調試端口可指定,此處為8081
  • /data/app/test.jar 指定需要執行的jar包的路徑
  • --spring.profiles.active=dev 設定SpringBoot運行環境為dev環境
  • > catalina.out將標准輸出指向制定文件catalina.out
  • 2>&1 輸出所有的日志文件
  • & 后台模式執行

腳本啟動

#!/bin/sh
#功能簡介:啟動上層目錄下的jar文件
#參數簡介:
#    $1:jar文件名(包含后綴名)
#    注意:jar文件必須位於startup.sh目錄的上一層目錄。

#啟動參數
JAVA_OPTS="-server -Xms400m -Xmx400m -Xmn300m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=128m -Xverify:none -XX:+DisableExplicitGC -Djava.awt.headless=true"

jar_name=$1
this_dir="$( cd "$( dirname "$0"  )" && pwd )"
parent_dir=`dirname "${this_dir}"`
log_dir="${parent_dir}/logs"
log_file="${log_dir}/catalina.out"
jar_file="${parent_dir}/userapps/${jar_name}"

#參數個數<1或者參數空值時,中斷執行
if [ $# -lt 1 ] || [ -z $1 ]; then
    echo -e "\033[31m請輸入要部署的jar包名稱!\033[0m"
    exit 1
fi

#日志文件夾不存在,則創建
if [ ! -d "${log_dir}" ]; then
    mkdir "${log_dir}"
fi

#父目錄下jar文件存在
if [ -f "${jar_file}" ]; then
    #啟動jar包;重定向標准錯誤輸出到文件,丟掉標准輸出
    java $JAVA_OPTS -jar ${jar_file} 1>/dev/null 2>"${log_file}" &
    exit 0
else
    echo -e "\033[31m${jar_file}文件不存在!\033[0m"
    exit 1
fi

啟動方式

./startup.sh xxx.jar

 

 

 

參考:https://www.cnblogs.com/woms/p/6145688.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM