如何获得JDK1.6上的jconsole启动时的正在运行的JAVA进程的一些信息
2012-06-28 15:41
477 查看
注:在1.6JDK下测试通过,其他版本未测试。
在做项目时,要获得其他运行的JAVA进程的主类名称
例如jconsole这样
那它的这些信息是如何获得的呢?
如果已配置环境变量,则可直接用jps命令获得。或直接调用Jps.main(new String[]{-l});
但是这样是直接输出了,那该怎么获得呢。
参考以下代码
这样就可以了。
代码中用到了tools.jar这个jar包,可以在JAVA_HOME的lib目录下找到他
在做项目时,要获得其他运行的JAVA进程的主类名称
例如jconsole这样
那它的这些信息是如何获得的呢?
如果已配置环境变量,则可直接用jps命令获得。或直接调用Jps.main(new String[]{-l});
但是这样是直接输出了,那该怎么获得呢。
参考以下代码
import java.util.Iterator; import java.util.Set; import sun.jvmstat.monitor.HostIdentifier; import sun.jvmstat.monitor.MonitoredHost; import sun.jvmstat.monitor.MonitoredVm; import sun.jvmstat.monitor.MonitoredVmUtil; import sun.jvmstat.monitor.VmIdentifier; import sun.tools.jps.Arguments; import sun.tools.jps.Jps; public class JSPTest { /** * @param args */ public static void main(String[] args) throws Exception { Arguments arguments = new Arguments(new String[] {"-l"}); HostIdentifier hostidentifier = arguments.hostId(); MonitoredHost monitoredhost = MonitoredHost.getMonitoredHost(hostidentifier); Set set = monitoredhost.activeVms(); Iterator iterator = set.iterator(); String s = null; while (iterator.hasNext()) { int i = ((Integer) iterator.next()).intValue(); s = (new StringBuilder()).append("//").append(i).append("?mode=r").toString(); VmIdentifier vmidentifier = new VmIdentifier(s); MonitoredVm monitoredvm = monitoredhost.getMonitoredVm(vmidentifier, 0); String s1 = MonitoredVmUtil.mainClass(monitoredvm, true); System.out.println(s1); } } }
这样就可以了。
代码中用到了tools.jar这个jar包,可以在JAVA_HOME的lib目录下找到他
相关文章推荐
- Android-如何获得当前正在运行的activity和进程的相关信息
- android-如何获得当前正在运行的activity的相关信息
- 如何获得系统正在运行的activity和services信息
- android-如何获得当前正在运行的activity的相关信息
- android-如何获得当前正在运行的activity的相关信息
- [Android实例] android 获得一个应用程序的启动次数,运行时间等信息
- 如何在Linux中查看所有正在运行的进程
- 如何利用 JConsole观察分析Java程序的运行,进行排错调优
- 如何在Linux中查看所有正在运行的进程
- 请问:软件运行前的设置界面显示'第一次运行软件,正在设置...'等信息的东东叫什么?如何做出这种东东呢?
- jsp中如何获得一些有用的信息
- Linux中如何让进程(或正在运行的程序)到后台运行?
- 如何利用 JConsole观察分析Java程序的运行,进行排错调优(转)
- java-JConsole-如何利用 JConsole观察分析Java程序的运行,进行排错调优
- 如何利用 JConsole观察分析Java程序的运行,进行排错调优
- 如何利用 JConsole观察分析Java程序的运行,进行排错调优
- 如何在Linux中查看所有正在运行的进程
- Linux下安装JDK1.6并且运行java程序和java项目例子
- Java中如何让web服务器启动的时候自动运行web程序中某个类的某个方法
- Oracle EBS无法启动,错误信息:您的安全设置已组织自签名的应用程序使用已过期的Java版本运行。