AVt天堂网 手机版,亚洲va久久久噜噜噜久久4399,天天综合亚洲色在线精品,亚洲一级Av无码毛片久久精品

當前位置:首頁 > 科技  > 軟件

告別Java -Jar啟動!告訴你啟動單機SpringBoot服務的正確操作方式

來源: 責編: 時間:2024-01-08 09:17:56 265觀看
導讀一、安裝Java運行時環境,這里我們使用開源免費的OpenJDK11查看OpenJDK11安裝包列表yum list|grep java-11-openjdk執行安裝命令。yum install -y java-11-openjdk.x86_64查看安裝成功的版本。[root@localhost ~]# java

da328資訊網——每日最新資訊28at.com

一、安裝Java運行時環境,這里我們使用開源免費的OpenJDK11

查看OpenJDK11安裝包列表da328資訊網——每日最新資訊28at.com

yum list|grep java-11-openjdk

執行安裝命令。da328資訊網——每日最新資訊28at.com

yum install -y java-11-openjdk.x86_64

查看安裝成功的版本。da328資訊網——每日最新資訊28at.com

[root@localhost ~]# java -versionopenjdk version "11.0.21" 2023-10-17 LTSOpenJDK Runtime Environment (Red_Hat-11.0.21.0.9-1.el7_9) (build 11.0.21+9-LTS)OpenJDK 64-Bit Server VM (Red_Hat-11.0.21.0.9-1.el7_9) (build 11.0.21+9-LTS, mixed mode, sharing)

設置JAVA_HOME。da328資訊網——每日最新資訊28at.com

通過命令查找java安裝的真實路徑,使用which java找到的是軟鏈接,需要通過ll命令一層層查找真實路徑,我們這邊最終/usr/bin/java真實的路徑為 /usr/lib/jvm/java-11-openjdk-11.0.21.0.9-1.el7_9.x86_64/bin/java,那么我們的JAVA_HOME就是java的安裝目錄/usr/lib/jvm/java-11-openjdk-11.0.21.0.9-1.el7_9.x86_64,去掉 末尾的 /bin/java 。da328資訊網——每日最新資訊28at.com

[root@localhost ~]# which java/usr/bin/java[root@localhost ~]# ll /usr/bin/javalrwxrwxrwx 1 root root 22 Jan  2 16:13 /usr/bin/java -> /etc/alternatives/java[root@localhost ~]# ll /etc/alternatives/javalrwxrwxrwx 1 root root 64 Jan  2 16:13 /etc/alternatives/java -> /usr/lib/jvm/java-11-openjdk-11.0.21.0.9-1.el7_9.x86_64/bin/java[root@localhost ~]# ll /usr/lib/jvm/java-11-openjdk-11.0.21.0.9-1.el7_9.x86_64/bin/java-rwxr-xr-x 1 root root 13192 Nov 15 00:51 /usr/lib/jvm/java-11-openjdk-11.0.21.0.9-1.el7_9.x86_64/bin/java

編輯/etc/profile文件,添加JAVA_HOME配置,并使用source /etc/profile命令使環境配置生效,不需要配置CLASS_APTH, rt.jar, tools.jar。da328資訊網——每日最新資訊28at.com

vi /etc/profile
export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-11.0.21.0.9-1.el7_9.x86_64export PATH=$PATH:$JAVA_HOME/bin
source /etc/profile

二、編寫啟動、停止SpringBoot服務的Shell腳本

定義運行服務需要的參數,服務名稱、服務程序路徑、日志文件等,這里可以感覺自己的需要來定義,包括可以添加java -jar的運行參數等。da328資訊網——每日最新資訊28at.com

#!/bin/bashAPP_NAME="gitegg-application.jar" # 命令號提示服務名APP_PATH="/opt/server/gitegg-application.jar" # jar包文件路徑LOG_FILE="/opt/server/gitegg-application.log" # 日志輸出文件路徑,一般我們服務會記錄日志,如果不想在這里輸出,那么可以填寫 /dev/null

定義命令腳本運行提示,如果輸入的命令格式錯誤,這里可以給出正確的命令格式等。da328資訊網——每日最新資訊28at.com

#使用說明,提示輸入參數usage() { echo "Usage: sh start_server.sh [start|stop|restart|status]" exit 1}

定義檢查服務是否正在運行的函數。da328資訊網——每日最新資訊28at.com

#檢查服務是否正在運行is_running(){ pid=`ps -ef|grep $APP_PATH|grep -v grep|awk '{print $2}' `if [ -z "${pid}" ]; then return 1 else return 0 fi}

定義啟動服務的函數。da328資訊網——每日最新資訊28at.com

#啟動服務start(){  is_running  if [ $? -eq "0" ]; then    echo "${APP_NAME} is already running. pid=${pid} ."  else    nohup java -jar $APP_PATH > $LOG_FILE 2>&1 &  fi}

定義停止服務的函數。da328資訊網——每日最新資訊28at.com

#停止服務stop(){  is_running  if [ $? -eq "0" ]; then    kill -9 $pid  else    echo "${APP_NAME} is not running"  fi}

定義查看服務運行狀態的函數。da328資訊網——每日最新資訊28at.com

#顯示運行狀態status(){  is_running  if [ $? -eq "0" ]; then    echo "${APP_NAME} is running. Pid is ${pid}"  else    echo "${APP_NAME} is NOT running."  fi}

定義服務重啟函數。da328資訊網——每日最新資訊28at.com

#重啟服務restart(){  stop  start}

腳本接收參數,根據參數執行對應的命令函數。da328資訊網——每日最新資訊28at.com

#選擇要運行的命令case "$1" in  "start")    start    ;;  "stop")    stop    ;;  "status")    status    ;;  "restart")    restart    ;;  *)    usage    ;;esac

設置腳本執行權限,填寫自己腳本文件的實際路徑。da328資訊網——每日最新資訊28at.com

chmod +x /opt/server/start_server.sh

完整的執行腳本如下:

#!/bin/bashAPP_NAME="gitegg-application.jar" # 命令號提示服務名APP_PATH="/opt/server/gitegg-application.jar" # jar包文件路徑LOG_FILE="/opt/server/gitegg-application.log" # 日志輸出文件路徑,一般我們服務會記錄日志,如果不想在這里輸出,那么可以填寫 /dev/null #使用說明,提示輸入參數usage() { echo "Usage: sh start_server.sh [start|stop|restart|status]" exit 1} #檢查服務是否正在運行is_running(){ pid=`ps -ef|grep $APP_PATH|grep -v grep|awk '{print $2}' `if [ -z "${pid}" ]; then return 1 else return 0 fi} #啟動服務start(){  is_running  if [ $? -eq "0" ]; then    echo "${APP_NAME} is already running. pid=${pid} ."  else    nohup java -jar $APP_PATH > $LOG_FILE 2>&1 &  fi} #停止服務stop(){  is_running  if [ $? -eq "0" ]; then    kill -9 $pid  else    echo "${APP_NAME} is not running"  fi} #顯示運行狀態status(){  is_running  if [ $? -eq "0" ]; then    echo "${APP_NAME} is running. Pid is ${pid}"  else    echo "${APP_NAME} is NOT running."  fi} #重啟服務restart(){  stop  start} #選擇要運行的命令case "$1" in  "start")    start    ;;  "stop")    stop    ;;  "status")    status    ;;  "restart")    restart    ;;  *)    usage    ;;esac

三、編寫啟動、停止SpringBoot服務的Shell腳本

在CentOS中的服務是由systemd管理的,可以通過systemctl命令進行服務運行的相關操作。da328資訊網——每日最新資訊28at.com

新增管理服務gitegg-server.service,服務名稱可以自己定義,此服務放到 /lib/systemd/system/ 目錄。da328資訊網——每日最新資訊28at.com

vi /lib/systemd/system/gitegg-server.service

編寫服務內容。da328資訊網——每日最新資訊28at.com

[Unit]                                                                                                                                                                                                               Description=gitegg-server                                                                                                                                                                                  After=docker.socket early-docker.target network.targetWants=network-online.target docker.serviceRequires=docker.socket                                                                                                                                                                                                                                                                                                                                                                                                                 [Service]                                                                                                                                                                                                            Type=forking                                                                                                                                                                                                         ExecStart=/opt/server/start_server.sh startExecStop=/opt/server/start_server.sh stop            ExecSatus=/opt/server/start_server.sh status                                              ExecRestart=/opt/server/start_server.sh restart                                                                                                                                                                                                                                                      [Install]                                                                                                                                                                                                            WantedBy=multi-user.target

保存并重新加載配置。da328資訊網——每日最新資訊28at.com

systemctl daemon-reload

設置服務開機啟動。da328資訊網——每日最新資訊28at.com

systemctl enable gitegg-server.service

可以直接使用systemctl 命令操作服務。da328資訊網——每日最新資訊28at.com

# 啟動服務systemctl start gitegg-server.service# 關閉服務systemctl stop gitegg-server.service# 查看服務狀態systemctl status gitegg-server.service# 重啟服務systemctl restart gitegg-server.service

本文鏈接:http://www.tebozhan.com/showinfo-26-57925-0.html告別Java -Jar啟動!告訴你啟動單機SpringBoot服務的正確操作方式

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。郵件:2376512515@qq.com

上一篇: 八張圖講清楚Mmap實現原理

下一篇: JS 中如何克隆對象?你學會了嗎?

標簽:
  • 熱門焦點
  • Redmi Pad評測:紅米充滿野心的一次嘗試

    從Note系列到K系列,從藍牙耳機到筆記本電腦,紅米不知不覺之間也已經形成了自己頗有競爭力的產品體系,在中端和次旗艦市場上甚至要比小米新機的表現來得更好,正所謂“大丈夫生居
  • 6月安卓手機好評榜:魅族20 Pro蟬聯冠軍

    性能榜和性價比榜之后,我們來看最后的安卓手機好評榜,數據來源安兔兔評測,收集時間2023年6月1日至6月30日,僅限國內市場。第一名:魅族20 Pro好評率:95%5月份的時候魅族20 Pro就是
  • 學習JavaScript的10個理由...

    作者 | Simplilearn編譯 | 王瑞平當你決心學習一門語言的時候,很難選擇到底應該學習哪一門,常用的語言有Python、Java、JavaScript、C/CPP、PHP、Swift、C#、Ruby、Objective-
  • 微信語音大揭秘:為什么禁止轉發?

    大家好,我是你們的小米。今天,我要和大家聊一個有趣的話題:為什么微信語音不可以轉發?這是一個我們經常在日常使用中遇到的問題,也是一個讓很多人好奇的問題。讓我們一起來揭開這
  • 使用AIGC工具提升安全工作效率

    在日常工作中,安全人員可能會涉及各種各樣的安全任務,包括但不限于:開發某些安全工具的插件,滿足自己特定的安全需求;自定義github搜索工具,快速查找所需的安全資料、漏洞poc、exp
  • 共享單車的故事講到哪了?

    來源丨海克財經與共享充電寶相差不多,共享單車已很久沒有被國內熱點新聞關照到了。除了一再漲價和用戶直呼用不起了。近日多家媒體再發報道稱,成都、天津、鄭州等地多個共享單
  • 造車兩年股價跌六成,小米的估值邏輯變了嗎?

    如果從小米官宣造車后的首個交易日起持有小米集團的股票,那么截至2023年上半年最后一個交易日,投資者將浮虧59.16%,同區間的恒生科技指數跌幅為52.78%
  • iQOO 11S評測:行業唯一的200W標準版旗艦

    【Techweb評測】去年底,iQOO推出了“電競旗艦”iQOO 11系列,作為一款性能強機,該機不僅全球首發2K 144Hz E6全感屏,搭載了第二代驍龍8平臺及144Hz電競
  • 英特爾Xe-HP項目終止,將專注Xe-HPC/HPG系列顯卡

    據10 月 31 日消息報道,英特爾高級副總裁兼加速計算系統和圖形事業部總經理 表示,Xe-HP“ Arctic Sound” 系列服務器 GPU 已經應用于 oneAPI devcloud 云服
Top