Netbeans und Debugging in Freiform-Projekten
NetBeans Debugging
Debugging in Netbeans ist unkompliziert - in NetBeans Projekten drücktman einfach auf den entsprechenden Knopf und schon funktioniert alles - der Debugger läuft und hält an den Breakpoints an, zeigt Threads, Variablen,... - was will man mehr?
Gründe für Freiform-Debugging
Dafür kann es eine ganze Reihe von Gründen geben - der wichtigste ist sicherlich, dass das betreffende Projekt bereits ein Freiform-Projekt ist und man nur zum Debuggen nicht erst kompliziert ein echtes NetBeans-Projekt aufsetzen möchte.
Es sei hier aber gleich darauf hingewiesen, daß manchmal als Grund für Freiform-Projekte angeführt wird, daß man unabhängig von einer bestimmten IDE bleiben will. Der hier aufgeführte Weg zum Debugging ist natürlicherweise untrennbar mit der NetBeans IDE verwoben - Dadurch wird natürlich diese Unabhängigkeit verlorengehen...
Freiform-Debugging - aber wie?
Dazu legt man das Freiform-Projekt, das um Debug-Möglichkeiten ergänzt werden soll, zunächst mittels des entsprechenden Knopfes im Kontextmenü als Hauptprojekt fest. Das Hauptprojekt ist das, für das die Aktionen "Start", Start Debugger",... ausgeführt werden.
Anschließend betätigt man mutig den Knopf "Start Debugger". NetBeans antwortet darauf wahrscheinlich mit einer Fehlermeldung, die besagt, dass der Project Output nicht spezifiziert wurde. Erscheint diese Meldung, kann man sie ignorieren und den Dialog mittels abbrechen verlassen. Danach startet man den Debugger einfach nochmals.
Daraufhin informiert uns NetBeans darüber, dass ein IDE-spezifisches Build-Ziel generiert werden muss, um den Debugger nutzen zu können und fragt, ob das nunmehr passieren soll - hier unbedingt mit Ja antworten.
Das nunmehr angezeigte Build-Ziel oder Target kann man aus dieser generierten Datei heauskopieren und ins eigene Build-File übertragen.
Damit nun aber das Debugging wirklich funktioniert, müssen noch einige kleine Änderungen vorgenommen werden:
- In beiden Tasks innerhalb der Klasse müssen die ClassPath-Einstellungen angepasst werden
- In dem Task java muss der korrekte Name der Main-Klasse eingetragen werden
- und damit die Sache mit den BreakPoints klappt, muss dem Debugger noch mitgeteilt werden, wo sich die Quelltexte befinden, in denen er nach Breakpoint Ausschau halten soll: das passiert, indem man in den Task nbjpdastart folgendes Element einfügt:
<sourcepath refid="debug.sourcepath"/>
Damit funktioniert das Debugging von Freiform Projekten in NetBeans wie in allen anderen Projekten!

