Apache 常用守护进程 - procrun。停止服务挂起

问题描述 投票:0回答:2

您好,我安装了我的 java 服务以通过 apache 公共守护进程 prunsrv 运行。我无法阻止它。有时,当从 Windows 服务控制台重新启动服务时,它会挂起;奇怪的是,我的服务已正确停止,如 apache 日志中所示。问题似乎与此 https://issues.apache.org/jira/browse/DAEMON-288 相同,即使修复似乎已经在版本 0.15 中实现。对于 0.14 版,问题不存在,但对于 0.14 版,服务会随机重新启动(不适合我的需要)。 这里有显示服务停止的日志:

[2016-01-19 11:12:52] [info]  [ 2036] Commons Daemon procrun (1.0.15.0 64-bit) started
[2016-01-19 11:12:53] [info]  [ 2036] Running 'xxxxxxx' Service...
[2016-01-19 11:12:53] [info]  [ 1400] Starting service...
[2016-01-19 11:12:54] [info]  [ 1400] Service started in 1546 ms.
[2016-01-19 11:58:50] [info]  [ 2648] Stopping service...
[2016-01-19 11:58:51] [info]  [ 2648] Service stop thread completed.

之后 Windows 服务控制台打印“

stopping service
”,一段时间后(我想是 1 分钟)它说“
Windows could not stop the service on local computer. Error 1053: The service did not respond to the start or control request in a timely fashion
”;然后服务无法重启(windows服务控制台继续显示为
stopping
),我们必须重启机器。

有没有人遇到同样的问题?

谢谢

java apache apache-commons procrun prunsrv
2个回答
2
投票

是的,我发现了 1.0.15 版本的问题,对我来说,降级到以前的 1.0.14 版本就足够了。与open bug相关:

https://issues.apache.org/jira/browse/DAEMON-298

(虽然 288 被标记为已解决)。


0
投票

如果找不到好的方法,可以在停止方法中使用 System.exit(0);

© www.soinside.com 2019 - 2024. All rights reserved.