判断操作系统是否有javaw.exe进程,如有,则杀死此进程
/**
*
*/
package cn.edu.zzuli.huang;
/**
* @author moon
*
*/
import java.io.BufferedReader;
import java.io.InputStreamReader;
public class ProcessHandler {
/**
* @author coldanimal; ProcessHandler windowns version.
*/
public static boolean findRunningProcess(String processName) {
String platform = System.getProperty("os.name");
if (platform.contains("Windows")) {
return findRunningWindowsProcess(processName);
} else if (platform.contains("Linux")) {
return findRunningLinuxProcess(processName);
} else {
throw new RuntimeException("Unknown platform " + platform);
}
}
private static boolean findRunningLinuxProcess(String processName) {
return false;
}
//获取所有进程列表
private static boolean findRunningWindowsProcess(String processName) {
BufferedReader bufferedReader = null;
Process proc = null;
try {
proc = Runtime.getRuntime().exec("tasklist /FI \"IMAGENAME eq " + processName + "\"");
bufferedReader = new BufferedReader(new InputStreamReader(proc.getInputStream()));
String line;
while ((line = bufferedReader.readLine()) != null) {
if (line.contains(processName)) {
return true;
}
}
return false;
} catch (Exception ex) {
ex.printStackTrace();
return false;
} finally {
if (bufferedReader != null) {
try {
bufferedReader.close();
} catch (Exception ex) {
}
}
if (proc != null) {
try {
proc.destroy();
} catch (Exception ex) {
}
}
}
}
//选择操作系统
public static boolean killRunningProcess(String processName){
String platform = System.getProperty("os.name");
if(platform.contains("Windows")){
return killRunningWindowsProcess(processName);
}else if(platform.contains("Linux")){
return false;
}
throw new RuntimeException("Unkown platform " + platform);
}
//终止进程
private static boolean killRunningWindowsProcess(String processName){
try {
Runtime.getRuntime().exec("taskkill /IM " + processName);
System.out.println("kill process successful");
System.out.println("Process " + processName + " was killed. Mission completed.");
return true;
} catch (Exception ex) {
ex.printStackTrace();
System.out.println("kill process fail");
System.out.println("Misson failed.");
return false;
}
}
public static void main(String[] args) {
if(ProcessHandler.findRunningProcess("javaw.exe")){
ProcessHandler.killRunningProcess("javaw.exe");
}
}
}
分享到:
相关推荐
java游戏demojava游戏demojava游戏demojava游戏demo java游戏demojava游戏demojava游戏demojava游戏demo java游戏demojava游戏demojava游戏demojava游戏demo java游戏demojava游戏demojava游戏demojava游戏demo java...
Java Socket 操作 Demo import java.awt.Color; import java.awt.Dimension; import java.awt.Point; import java.awt.event.KeyAdapter; import java.awt.event.KeyEvent; import java.io.BufferedReader; import ...
Java程序操作docker示例Demo.zip
使用的java系统demo
钉钉对接Java demo
操作系统进程间通信管道demo
1.java操作mongodb的demo 2.直接解压即可运行
java 微信公众号开发入门 DEMO 可直接跑起来的 大家可以直接下载,然后练习一下。java 微信公众号开发入门 DEMO 可直接跑起来的 大家可以直接下载,然后练习一下。
java操作svn的demo,官网上下载的,有兴趣的可以看看。
JAVA 实现 简单 学生住宿管理系统demoJAVA 实现 简单 学生住宿管理系统demoJAVA 实现 简单 学生住宿管理系统demoJAVA 实现 简单 学生住宿管理系统demoJAVA 实现 简单 学生住宿管理系统demoJAVA 实现 简单 学生住宿...
JAVA 简单实现 学生住宿管理系统 demo JAVA 简单实现 学生住宿管理系统 demo JAVA 简单实现 学生住宿管理系统 demo JAVA 简单实现 学生住宿管理系统 demo JAVA 简单实现 学生住宿管理系统 demo JAVA 简单实现 学生...
使用javaCSV.jar操作csv文件,很简单的读写,大佬跳过!
java分布式事务demo
java jdk 动态代理 演示demo
java web接口开发demo 详细地址:http://blog.csdn.net/zxw136511485/article/details/51437115
java四种xml读写demo
自己写的一些多线程的小Demo,在这里与大家分享一下。
java网络爬虫实现简单Demo
Java9模块化demoJava9模块化demoJava9模块化demoJava9模块化demoJava9模块化demoJava9模块化demoJava9模块化demoJava9模块化demo
Java中的代理模式Demo