当前位置 主页 > 服务器问题 > win服务器问题汇总 >

    Linux利用Shell脚本部署jar包项目的完整步骤

    栏目:win服务器问题汇总 时间:2020-01-03 19:15

    一.安装JDK

    查看电脑的操作位数:
    uname -ar

    2017 x86_64 x86_64 x86_64 GNU/Linux
    如果这里显示是64位的就下载相应64位的包

    jdk的下载地址,推荐下载tar.gz的包
    www.oracle.com/technetwork…

    下面开始正式的安装jdk

    1、上传jdk的安装包到 /root

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

    2、确认系统是否已经安装过jdk

    rpm -qa|grep jdk
    rpm -e --nodeps 软件名称 //如果检查到有安装就执行卸载命令

    3、解压缩jdk的安装包到指定目录

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

    4、进入解压缩目录

    cd /usr/local

    5、修改jdk的文件夹名称

    mv jdk1.8.0_131 jdk

    6、配置环境变量

    修改环境变量配置文件:

    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  保存退出

    7、重新加载环境配置

    source /etc/profile

    8、测试JDK安装是否ok

    java -version

    9、编写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目录,按照如下的结构建立相关的文件夹以及文件

    目录的结构为:


    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 &

    这里需要注意的是{app_name}.jar这个可能会包如下的错误:

    Error: Unable to access jarfile /app/myjar.jar

    这里可能需要更改为绝对路径,如下:

    /datat/test/app/${app_name}.jar