20.4 Geschwätzige Programme und JConsole
Viele von uns kennen aus dem bin-Verzeichnis nur die Konsolenanwendungen java und javac. Doch tummeln sich dort insgesamt mehr als 40 ausführbare Programme. Einen Rutsch neuer Programme brachte das JDK 5 zur Überwachung von Java-Programmen. Unter ihnen befindet sich zum Beispiel jps, das laufende Java-Instanzen anzeigt:
$ jps
3396 startup.jar
2512 Jps
Eine längere Ausgabe mit -l zeigt, was sich hinter startup.jar verbirgt:
$ jps -l
3396 C:\Programme\eclipse-3.1\eclipse\startup.jar
480 sun.tools.jps.Jps
20.4.1 JConsole
Die JConsole ist ein Swing-Programm, das sich an die JVM anhängt und die MBean-Informationen grafisch aufbereitet. Beginnen wir mit einem kleinen Programm, das unendlich viele neue Objekte erzeugt.
Listing 20.5: com/tutego/insel/jmx/Exhibitionism.java
package com.tutego.insel.jmx;
import javax.swing.*;
public class Exhibitionism
{
public static void main( String[] args )
{
new Thread() {
@Override public void run() { while ( true ) { new JTree(); } }
}.start();
JOptionPane.showMessageDialog( null, "OK bei Ende" );
System.exit( 0 );
}
}
Die JConsole kann einen Kontakt mit Java-Programmen aufnehmen:
$ jconsole
Sie bietet im ersten Dialog an, mit einem Programm zu verbinden, das sich mit dem passenden Schalter geöffnet hat.
Abbildung 20.2: Verbindung aufbauen mit JConsole
Nach der geglückten Verbindung zeigen unterschiedliche Reiter die einzelnen MBean-Informationen. Der erste Reiter zeigt eine Übersicht über interessantere Eigenschaften der Anwendung:
Abbildung 20.3: Oberfläche von JConsole
Ihr Kommentar
Wie hat Ihnen das <openbook> gefallen? Wir freuen uns immer über Ihre freundlichen und kritischen Rückmeldungen.