Nohup java进程超时或被杀死

时间:2017-04-07 21:31:27

标签: java unix nohup

我有一个java应用程序,它被编译并打包为Jar文件。它在应用程序中包含一个while(true)循环。

我的主要问题是,当我使用

在unix服务器上运行我的应用程序时
nohup java -jar processName.jar > log.txt
它开始很好。过了一会儿(我不知道原因,并且日志文件不存在任何异常)它似乎关闭了。我可以通过ps -ef查看进程,但日志文件和输出文件根本不会改变。


nohup过程会在一段时间后关闭吗?它有任何超时或我必须做的任何配置吗?在服务器上创建后台进程的最佳方法是什么?

1 个答案:

答案 0 :(得分:-1)

Nohup不会停止,除非程序退出或您中断该过程(这包括您断开与ssh shell的连接)。要在后台启动程序,请在命令后添加&符号(&): nohup java -jar processName.jar > log.txt &

如果你想稍后轻易杀死它,屏幕也很有用。

如果它在后台运行时仍然停止,那么Java代码中的某些东西会默默地退出,所以请在那里进行调查。

另外一种可能性 - 在某些机器上,低优先级的CPU占用程序可能会自动被杀死。如果你的while循环没有屈服,那么(虽然不太可能)可能是这个过程被关闭的原因。