赞
踩
在一般情况下,我们在服务器通过 java -jar xxx.jar 来运行一个jar包。
但是如果我们退出了控制台,那么这个程序就将被关闭。
那么,如何实现让jar包后台运行呢?
这里有三种方式
第一种方式:
java -jar xx.jar &
第二种方式:
nohup java -jar xx.jar &
第三种方式(推荐):
# 1.先正常运行Jar包。 [root@abc906093117 ~]# java -Dfile.encoding=utf-8 -jar huobi-client.jar 16:49:19,993 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback-test.xml] 16:49:19,993 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback.groovy] 请输入目标价格 3300 目标价格为3300 已经开始监控。。。。 # 2.ctrl+z 退出当前java程序dos窗口到控制台。然后可以输入'bg'来再次进入java程序的dos窗口 [root@abc906093117 ~]# bg [1]+ java -Dfile.encoding=utf-8 -jar huobi-client.jar & 当前价格:3027.26 当前价格:3026.66 # 3.输入'exit'来退出服务器。此时Java程序就能一直在后台运行了。 [root@abc906093117 ~]# exit logout Connection closing...Socket close. Connection closed by foreign host. # 4.登陆服务器,输入‘ps -ef|grep java’来查看所有运行中的java程序。 # 可以看到刚才启动的程序一直在运行。 [root@abc906093117 ~]# ps -ef|grep java root 30232 1 2 17:49 ? 00:00:01 java -Dfile.encoding=utf-8 -jar huobi-client.jar root 30271 30250 0 17:50 pts/0 00:00:00 grep --color=auto java
为什么推荐第三种方式呢?因为前两种方式都是直接后台运行jar包,并没有进入到java的dos窗口。
但假如,我们的java程序需要我们进入到它的dos窗口,输入一些参数来运行的话,前两种是不可取的。而第三种的话,则可以在运行jar包后进入java的dos窗口来输入一些程序需要的参数,随后退出dos窗口让其在后台运行。
参考:https://www.cnblogs.com/miamianfighting/p/14208015.html
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。