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

相关文章
相关标签/搜索