如果停止 Windows 服务不能停止该进程,该怎么办?

如果停止 Windows 服务不能停止该进程,该怎么办?

我正在尝试使用命令 停止带有底层 Java 进程的 Windows 服务net stop。有时底层进程不会停止。我只能通过执行 来停止它taskkill /f /pid

我可以做什么呢?

答案1

不幸的是,这里的选择有限。

由于您的 java 应用程序不是与 Windows 服务控制管理器集成的真正的 Windows 服务,因此发出“net stop”将失败。您的 java.exe 将继续运行,必须通过其他方法停止。

正如您所指出的,taskkill 是一种解决方案。当不使用“/f”参数时,taskkill 应该会尝试正常关闭 java.exe。

另一个选项是使用自定义方法指示程序关闭。例如,如果您的程序支持 Web 界面,您可以通过网络发送请求来要求其关闭。

相关内容