zoukankan      html  css  js  c++  java
  • linux系统下运行java项目的脚本编写

    本文主要讲linux系统下运行jar包,至于如何打包jar包,放到linux系统下可以参考其他的博客。

    在linux系统下运行jar包的命令如下:

    1、java -jar xxxxx.jar  // 当前ssh窗口被锁定,可按CTRL + C打断程序运行,或直接关闭窗口,程序退出

    2、java -jar xxxxx.jar &   //当前ssh窗口不被锁定,但是当窗口关闭时,程序中止运行。

    3、nohup Java -jar xxxxxx.jar &  //意思是不挂断运行命令,当账户退出或终端关闭时,程序仍然运行

    这个只要部署一次,然后实际运行一下就会发现问题,然后自己搜索。那么如何写一个shell脚本,直接运行resart.sh脚本就好了。

    经过几次试验终于写好了。如下:restart.sh

    pid=`ps -ef | grep rulecc-1.0.0 | grep -v grep |awk '{print $2}'`
    if [ $pid ]; then  
        echo :App  is  running pid=$pid
        kill -9 $pid
    fi
    nohup java -jar /apps/rulecc-1.0.0/rulecc-0.0.1-SNAPSHOT.jar &
    tail -f nohup.out
    

     

    对于一些大牛很快就能看懂,如果你跟我一样,一点linux脚本的基础和经验也没有,那么下面的知识和操作有助于你能理解:

    1、linux环境下运行了java程序之后,如何查看启动程序的线程?如何关闭运行程序的线程?

    第一步:在运行app的路径下输入命令:jps

    第二步:当你找到对应的app,那么你一定可以找到对应的线程;没有找到也没有关系,到网上搜搜,或者问问身边写过的人,也能找到。假设目标线程的pid=12522

    第三步:“杀死”运行app的线程: kill -9 12522

    第四步:重新运行java程序。

    第五步:反复操作前面四步。多做几次你一定会懂是什么意思。

    下面就来解释一下restart.sh脚本的意思:

    第一行:将运行目标的线程pid赋值给pid变量

    第二行:判断pid是否在运行

    第三行:如果在运行就打印运行的pid

    第四行:“杀死”运行的pid

    第五行:运行java程序。

    第六行:自己搜一下吧。

    问题:在写restart.sh的时候遇到了几个问题,都顺利解决了,提供给大家参考,如果有疑问还是没有解决的,欢迎留言。

    1、xxx.sh脚本运行不被允许。

    2、syntax error near unexpected token。出现这个问题的原因是由于windows环境下的换行符在linux环境下无法识别,所以要转换成linux环境下的。

    这个在百度经验里面会有,这里就不罗嗦了。

    ===============================

    下面提供一些常用的linux环境下的运行语句:

    cd ..   //回到上一级目录
    cd /apps   //打开文件夹
    ls     //查看文件
     
    cd ./icreditrisk   //打开当前文件夹下的某文件夹
    ls    // 查看文件
     
    vim application.xml // 查看该文件
    i           // 插入,修改
    q!           // 放弃修改
    wq      //保存修改

    [参考文章]

    1、http://blog.csdn.net/wggorking/article/details/53925907

    2、https://jingyan.baidu.com/article/9f63fb91d014b8c8410f0e7a.html

    3、http://blog.csdn.net/catoop/article/details/50588851

     4、http://blog.csdn.net/qq_30739519/article/details/51115075

  • 相关阅读:
    《算法竞赛入门经典》 例题35 生成元 (Digit Generator, ACM ICPC Seoul 2005,UVa)
    《算法竞赛入门经典》 例题35 生成元 (Digit Generator, ACM ICPC Seoul 2005,UVa)
    《算法竞赛入门经典》 例题35 生成元 (Digit Generator, ACM ICPC Seoul 2005,UVa)
    SVN分支
    SVN分支
    SVN 版本回退
    SVN 版本回退
    如何在excel中取消合并单元格后内容自动填充?
    如何在excel中取消合并单元格后内容自动填充?
    如何让自己像打王者荣耀一样发了疯、拼了命的学习?
  • 原文地址:https://www.cnblogs.com/boywwj/p/7223019.html
Copyright © 2011-2022 走看看