启动jar程序
方式1:
java -jar xxx.jar
特点:当前ssh窗口被锁定,使用Ctrl+c打断程序运行,或者关闭窗口,程序退出。
方式2:
java -jar xxx.jar &
& 表示后台运行
特点:当前ssh窗口不被锁定,当窗口关闭时,程序退出。
方式3:
nohup java -jar XXX.jar &
特点:nohup意思是不挂断运行命令,当账户退出或者终端关闭时,程序仍然运行。
当用nohup命令执行作业任务时,缺省情况下作业的所有输出被重定向到nohup.out 中,除非另外指定了地方。
方式4:
nohup java -jar XXX.jar > out.log &
解释下 > out.log
command >out.log
command >out.log是将command的输出重定向到out.log文件,即输出内容不打印到屏幕上,而是输出到out.file文件中。
可通过jobs命令查看后台运行任务
jobs
那么就会列出所有后台执行的作业,并且每个作业前面都有个编号。
如果想将某个作业调回前台控制,只需要 fg + 编号即可。
fg 10
二、终止jar程序
1、首先找到该jar在运行时产生的进程号pid
a、在运行成功时会自动返回一个pid,如下图5509既是。
b、根据jar所占用端口(如果有端口占用),如下图5509既是。
[root@VM-0-4-centos java]# netstat -nlp | grep :80
c、根据java程序查找
[root@VM-0-4-centos java]# ps -ef | grep java
2、根据进程号pid,结束进程
[root@VM-0-4-centos java]# kill 5509
检查运行结果:
PS:如果不想要运行中的日志,可以把日志文件扔到/dev/null黑洞目录下,扔进去的文件回被自动销毁。
参考资料:http://t.zoukankan.com/whales...
2022.6.7追加:
优化后的命令:
nohup java -Xms128m -Xmx512m -Duser.timezone=GMT+8 -jar news-graduate-service.jar >/dev/null 2>&1 &
或者运行时指定配置文件:
nohup java -Xms128m -Xmx512m -Duser.timezone=GMT+8 -jar news-graduate-service.jar --spring.profiles.active=prod >/dev/null 2>&1 &
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。