Linux使用Shell腳本部署jar包項目

一.安裝JDK

查看電腦的操做位數:
uname -ar
複製代碼

2017 x86_64 x86_64 x86_64 GNU/Linuxhtml

若是這裏顯示是64位的就下載相應64位的包java

jdk的下載地址,推薦下載tar.gz的包node

www.oracle.com/technetwork…linux

下面開始正式的安裝jdk
一、上傳jdk的安裝包到 /root

jdk-8u131-linux-x64.tar.gzspring

二、確認系統是否已經安裝過jdk

rpm -qa|grep jdkbash

rpm -e --nodeps 軟件名稱 //若是檢查到有安裝就執行卸載命令oracle

三、解壓縮jdk的安裝包到指定目錄

tar -xvf jdk-8u131-linux-x64.tar.gz -C /usr/local/app

四、進入解壓縮目錄

cd /usr/local測試

五、修改jdk的文件夾名稱

mv jdk1.8.0_131 jdkspa

六、配置環境變量

修改環境變量配置文件:

vi /etc/profile

點 i鍵進入編輯模式

跳轉到最後一行,增長以下內容,注意這裏的jdk請和你當初安裝jdk的路徑保持一致

#java runtime seting
export JAVA_HOME=/usr/local/jdk
export CLASSPATH=$JAVA_HOME/lib:.
export PATH=$JAVA_HOME/bin:$PATH
複製代碼

按ESC 輸入:wq 保存退出

七、從新加載環境配置

source /etc/profile

八、測試JDK安裝是否ok

java -version

九、編寫hello.java

vi Hello.java

class Hello{
	public static void main(String[] args){
	System.out.println("hello,java");
	}
}
複製代碼

而後ESC :wq退出

vi /etc/profile i編寫

javac Hello.java
複製代碼

二.部署jar包

1.建立data,而後在創建test目錄,按照以下的結構創建相關的文件夾以及文件

目錄的結構爲:

image.png

app下面放置主要的jar包,如myjar,下面是相關的restart.sh的內容:

#!/bin/bash

base_home='/data/test'
app_name='myjar'

pid=`ps -ef|grep ${app_name}|grep -v grep|grep -v restart|awk '{print$2}'`
if [ -n "${pid}" ] ;then
        kill -9 ${pid}
        sleep 10
fi

gclog_file=$base_home/log/gc.log
dump_dir=$base_home/heapdump
errorlogs_dir=$base_home/log

java -Xmx1g -Xms1g -XX:+UseParallelGC -XX:+UseParallelOldGC -XX:+PrintGCDetails  -XX:+PrintGCTimeStamps -XX:+UseGCLogFileRotation  -XX:GCLogFileSize=128M  -XX:NumberOfGCLogFiles=1  -Xloggc:${gclog_file} -XX:HeapDumpPath=${dump_dir} -jar $base_home/app/${app_name}.jar --spring.config.location=$base_home/config/application.yml >> $base_home/log/${app_name}_$(date +'%Y%m%d').log &
複製代碼

這裏須要注意的是base_home/app/{app_name}.jar這個可能會包以下的錯誤:

Error: Unable to access jarfile /app/myjar.jar
複製代碼

這裏可能須要更改成絕對路徑,以下:

/datat/test/app/${app_name}.jar
複製代碼

訪問相關的路徑:(這裏根據你的jar的相關端口來修改

http://ip:8080/

查看日誌的路徑:

cd /log

這裏下面會顯示相關的jar包的名稱和日期的log文件 如:myjar_20190530.log

相關文章
相關標籤/搜索