linux系统下运⾏java项⽬的脚本编写
本⽂主要讲linux系统下运⾏jar包,⾄于如何打包jar包,放到linux系统下可以参考其他的博客。
在linux系统下运⾏jar包的命令如下:
1、java -jar xxxxx.jar // 当前ssh窗⼝被锁定,可按CTRL + C打断程序运⾏,或直接关闭窗⼝,程序退出
2、java -jar xxxxx.jar & //当前ssh窗⼝不被锁定,但是当窗⼝关闭时,程序中⽌运⾏。
3、nohup -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没有vim命令
这个在百度经验⾥⾯会有,这⾥就不罗嗦了。
===============================
下⾯提供⼀些常⽤的linux环境下的运⾏语句:
cd .. //回到上⼀级⽬录
cd /apps //打开⽂件夹
ls //查看⽂件
cd ./icreditrisk //打开当前⽂件夹下的某⽂件夹
ls // 查看⽂件
l // 查看该⽂件i // 插⼊,修改
q! // 放弃修改
wq //保存修改
[参考⽂章]
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论