我有在JVM中运行的Cobertura检测的jar。当我在运行应用程序的Windows控制台中按Ctrl-C时,JVM结束,并且 Cobertura结果成功刷新到cobertura.ser文件。但是我需要使用命令/工具(而不是Ctrl-C)停止该JVM,类似于Linux中的“soft kill”(不带“-9”参数的“kill”命令)。当我使用“taskkill/PID 1234”时,它写道:

D:\>taskkill /PID 1234
ERROR: The process with PID 1234 could not be terminated.
Reason: This process can only be terminated forcefully (with /F option).

但是,当我使用参数/F时,JVM被强制终止,这就是为什么 Cobertura结果不刷新到cobertura.ser文件的原因。

如何使用Windows命令/第三方工具成功完成Cobertura刷新来杀死JVM(Windows“软杀死”)?

最佳答案

尝试查看WMI,使用JavaScript或VBScript创建用于选择进程并杀死它的规则。

例如http://community.spiceworks.com/scripts/show/498-kill-a-process-using-wmi-使用VBScript招募简单的kill脚本

09-26 20:39
查看更多