Übung 1.2: Erste Sonde erstellen
Bevor Sie mit dieser Übung beginnen, sollten Sie Übung 1.1: Erforderliche Ressource importieren ausgeführt haben.
Die Sonde, die Sie erstellen werden, meldet den Eintritt in jede Methode Ihres Programms.
Für das Erstellen einer Sonde sind die drei folgenden Haupt-Tasks auszuführen:
- Erstellen einer leeren Probekit-Quellendatei
- Erstellen des Inhalts der Quellendatei
- Überprüfen der Sonde
Leere Probekit-Datei erstellen
Wir werden die Probekit-Datei in einem eigenen Projekt erstellen.
Es ist jedoch möglich, Sonden in demselben Projekt wie die Anwendung zu erstellen.
- Erstellen Sie wie folgt ein neues Java-Projekt für die Sonde:
- Wählen Sie in der Menüleiste der Softwareentwicklungsplattform Datei > Neu > Projekt... aus, um das
Dialogfenster "Neues Projekt" zu öffnen.
- Wählen Sie Java-Projekt aus und klicken Sie auf Weiter. Daraufhin
wird das Dialogfenster "Neues
Java-Projekt" geöffnet.
- Geben Sie im Feld "Projektname" RandomNumbersProbe ein und klicken Sie auf
Fertig stellen. In der Ansicht "Paket-Explorer" wird ein Eintrag für RandomNumbersProbe hinzugefügt.
- Konvertieren Sie das Projekt wie folgt in ein Probekit-Projekt:
- Klicken Sie in der Ansicht "Paket-Explorer" mit der rechten Maustaste auf das soeben erstellte
Projekt RandomNumbersProbe und wählen Sie Neu > Andere... aus, um das Dialogfenster "Neu" zu öffnen.
- Markieren Sie die Option Alle Assistenten anzeigen und erweitern Sie die Anzeige für den Eintrag
"Profilermittlung und Protokollierung".
- Wählen Sie Java-Projekte in Probekit-Projekte konvertieren aus und klicken Sie auf Weiter.
- Falls das Dialogfenster "Aktivierung bestätigen" geöffnet wird,
klicken Sie auf Funktionalitäten immer aktivieren und Frage nicht erneut stellen. Klicken Sie dann auf OK. Daraufhin wird das Dialogfenster "Java-Projekte in
Probekit-Projekte konvertieren" geöffnet.
- Vergewissern Sie sich, dass nur das Projekt RandomNumbersProbe markiert ist. Klicken Sie dann
auf Fertig stellen.
- Erstellen Sie im Projekt RandomNumbersProbe wie folgt eine neue Probekit-Quellendatei:
- Klicken Sie in der Ansicht "Paket-Explorer" mit der rechten Maustaste auf RandomNumbersProbe.
- Wählen Sie Neu > Datei aus. Daraufhin
wird das Dialogfenster "Neue
Datei" geöffnet.
- Wählen Sie RandomNumbersProbe als Stammordner aus.
- Geben Sie im Feld "Dateiname" RandomNumbersProbe.probe ein und klicken Sie auf Fertig stellen. In der Ansicht "Paket-Explorer" wird ein
Eintrag für RandomNumbersProbe.probe hinzugefügt.
Der Probekit Editor und die Problemansicht werden geöffnet. Der Editor zeigt die neu erstellte Datei an.
Sie haben jetzt eine leere Probekit-Quellendatei in einem eigenen Projekt. Da die Datei in einem
Probekit-Projekt enthalten ist und Sie die automatische Build-Erstellung in Ihrem Arbeitsbereich aktiviert haben,
versucht der Sondencompiler, die Quellendatei zu kompilieren. In der Problemansicht wird ein Fehler gemeldet, weil eine leere Datei keine
gültige Probekit-Quellendatei ist.
Inhalt der Quellendatei erstellen
Jetzt werden Sie im Probekit Editor die Elemente erstellen, aus denen eine Sonde besteht.
Probekit-Quellendateien haben eine Baumstruktur. Das Ausgangselement ist ein Element Probekit. Unter dem Element Probekit müssen Sie ein Element Probe erstellen und unter
diesem ein neues Element Fragment. Anschließend müssen Sie angeben, dass dieses Element
Fragment auf zwei Datenfelder zugreifen soll: den Klassennamen und den Methodennamen. Schließlich müssen
Sie das eigentliche Java-Codefragment schreiben.
Die Sonde, die wir
erstellen wollen, besteht aus nur einem Java-Codefragment "entry". Ein "entry"-Fragment wird beim Eintritt
in angegebene Methoden des zu untersuchenden Programms ausgelöst. Bei unserer Sonde gibt das "entry"-Fragment beim Eintritt in eine Methode
den Klassen- und Methodennamen aus. So wie die Sonde geschrieben ist, wird sie auf
alle Klassen und Methoden angewendet. Beim Deployment werden wir den Geltungsbereich jedoch einschränken,
indem wir bei der Startprozedur Systemklassen herausfiltern.
Anmerkung: Das Probekit unterstützt neben "entry"-Fragmenten weitere Arten von Fragmenten. Sie können beispielsweise auch Fragmente schreiben,
die beim Austritt aus angegebenen Methoden ausgeführt werden oder die ausgeführt werden, wenn eine angegebene Methode
eine Ausnahme bearbeitet. Detaillierte Informationen hierzu finden Sie im Hilfesystem.
Gehen Sie wie folgt vor, um die Elemente für Ihre Sonde zu erstellen:
- Klicken Sie im Probekit Editor mit der rechten Maustaste auf das Element Probekit und wählen Sie
New > Probe aus. Zur Baumstruktur wird ein Element Probe hinzugefügt.
- Klicken Sie mit der rechten Maustaste auf das neu erstellte Element
Probe und wählen Sie New > Fragment aus. Unter dem Element Probe wird ein
Element Fragment hinzugefügt. Fragmente werden standardmäßig als "entry"-Fragmente erstellt. (Das Feld "Fragment Type" auf der rechten Seite
des Probekit Editors enthält ebenfalls die Auswahl entry.)
- Erstellen Sie wie folgt eine Variable für den Klassennamen:
- Klicken Sie mit der rechten Maustaste auf das Element Fragment entry und wählen Sie New > Data aus.
- Stellen Sie sicher, dass auf der rechten Seite des Probekit Editors als "Data Type" className ausgewählt ist.
- Geben Sie im Namensfeld cname als Variablennamen ein.
- Erstellen Sie wie folgt eine Variable für den Methodennamen:
- Klicken Sie mit der rechten Maustaste auf das Element Fragment entry und wählen Sie New > Data aus.
- Wählen Sie in der Dropdown-Liste unter "Data Type" methodName aus.
- Geben Sie im Namensfeld mname als Variablennamen ein.
- Geben Sie wie folgt den Java-Code ein, den Sie ausführen möchten:
- Klicken Sie auf das Element Fragment entry.
- Geben Sie im Java-Codebereich die folgende Codezeile ein:
System.out.println("[Enter method " + cname + "." + mname + "]");
- Wählen Sie in der Menüleiste Datei > Speichern aus. Der Sondencompiler kompiliert
die Sonde automatisch aus dem Quellcode.
Sonde überprüfen
Wenn Sie Ihre Sonde speichern, meldet der Sondencompiler in der Problemansicht Fehler. Überprüfen Sie in der Problemansicht,
ob Ausführungsfehler vorliegen. Korrigieren Sie vorhandene Fehler im Probe Editor und speichern Sie die Sonde erneut.
In der Problemansicht können zwei Fehlertypen gemeldet werden:
- Der eine Fehlertyp ist ein struktureller Fehler in der Probekit-Quellendatei. Ein Sondenelement kann beispielsweise nicht zwei Fragmente desselben Typs enthalten. Dieser Fehlertyp wird in der Problemansicht in der Ressourcenspalte als Fehler in der Sondenquellendatei
angezeigt.
- Der andere Fehlertyp ist ein Fehler in der Java-Quellcodekomponente eines Sondenfragments. Aufgrund der internen Struktur des Probekit werden diese Fehler für eine andere Datei
angezeigt, und zwar für eine vom Probekit generierte Datei, die in diesem Fall den Namen RandomNumbersProbe_probe.java hat. Wenn Sie in der Problemansicht doppelt auf den Fehler klicken,
wird die generierte Java-Quellendatei geöffnet. Sie können den Fehler zwar hier beheben, sollten dies jedoch nicht tun.
Alle in dieser Datei vorgenommenen Änderungen werden überschrieben,
wenn der Sondencompiler die Datei das nächste Mal aus der Sondenquelle generiert. Untersuchen Sie stattdessen die generierte Java-Datei, um festzustellen, in welchem
Fragment der Fehler auftritt. Verwenden Sie dann den Probekit Editor, um den Fehler in dem Fragment zu korrigieren.
Sie haben es geschafft! Die erste Sonde ist erstellt.
Jetzt können Sie mit Übung 1.3: Sonde anwenden beginnen.