2017-01-02 50 views
0

我想将PID分配给我的java应用程序(如果可能的话),并杀死所有其他javaw.exe。PID java应用程序和kill

Runtime.getRuntime().exec("taskkill /F /IM javaw.exe"); 

或PID

Runtime.getRuntime().exec("taskkill /F /PID <ID>"); 

我知道这会杀死所有的javaw.exe,但我需要我的应用程序仍正常运行。

它应该杀死特定的java应用程序,但他们有随机PID的分配。我虽然最简单的方法是关闭所有java应用程序除了我的运行。

+1

通过PID杀死是一个要求?如果没有,打开一个套接字并监听关机命令是一个更简洁的解决方案。 – PeterMmm

+0

你好,不,不是。感谢领先! – BoB3R

+1

PID由内核给出。启动应用程序时添加一个无操作标识符参数“java -classpath ./lib com.package.MyApp key1 = val1 key2 = val2 processidenfier = abcxyz123”。列出具有完整参数列表的进程,使用PID跳过活动的java.exe进程一个接一个地执行。或者使用JNI/JNA来读取当前的pid http://stackoverflow.com/questions/35842/how-can-a-java-program-get-its-own-process-id – Whome

回答

0

我已经做了一点点不同。我已经使用了“wmic”,最后列出了所有的java进程和PID。我正在拿最后的数字并杀死他们。

wmic process where "name like '%javaw%'" 
相关问题