我不是對這個問題不清楚,但我要解釋它,只要你想下面的2
Java的罐子fred.jar
和
區分的java package.Main
這裏是節目的輪廓線
import sun.jvmstat.monitor.*;
...
HostIdentifier hostId = new HostIdentifier("localhost");
MonitoredHost monitoredHost = MonitoredHost.getMonitoredHost(hostId);
Set jvms = monitoredHost.activeVms();
for (Object i: jvms) {
VmIdentifier id = new VmIdentifier("//" + i + "?mode=r");
MonitoredVm vm = monitoredHost.getMonitoredVm(id, 0);
System.out.println(i);
System.out.println("\t main class: " + MonitoredVmUtil.mainClass(vm, false));
System.out.println("\t main args: " + MonitoredVmUtil.mainArgs(vm));
System.out.println("\t jvmArgs: " + MonitoredVmUtil.jvmArgs(vm));
monitoredHost.detach(vm);
}
致電MonitoredVmUtil.mainClass(vm, false)
將返回'jar
'或您的主類的名稱,例如Main
。
您必須使用$JAVA_HOME/lib/tools.jar
進行編譯和運行。
如果從命令行啓動它,應用程序在沒有GUI的情況下運行嗎? – Jon 2010-05-20 00:26:50
有趣的問題(+1),但非常棘手,對於已刪除的答案抱歉,我意識到這是不可靠的。 – BalusC 2010-05-20 00:33:29
@Jon它在兩種情況下都是通過GUI運行的 – OscarRyz 2010-05-20 00:40:01