Der Display-View in Eclipse ist eine hilfreiche Unterstützung beim Debugging.
Einblenden kann man ihn über das Menü Window -> Show View -> Other. Dann erscheint der Show View Dialog und der Display-View befindet sich dort im Ordner “Debug”.
Wenn man dann beim Debugging bei einem Breakpoint angehalten hat, kann man in diesem View Code-Schnippsel eintippen, die entweder einen Ausdruck darstellen oder auch Methoden von Objekten aufrufen, die an der aktuellen Codestelle zur Verfügung stehen.
Wenn man einen Ausdruck eingegeben hat, markiert man ihn und kann dann entweder per Context-Menü -> Display oder dem Shortcut Ctrl+Shift+D das Ergebnis dieses Ausdrucks ausgeben lassen:
Bei einer Anweisung, die man ausführen möchte (also beispielsweise eine Methode eines Objekts im aktivem Debugging-Context). Geht man ebenso vor – Code eintippen, markieren – nur drückt man dann Ctrl+U oder wählt im Context-Menü -> Execute.
Soweit so gut. Was ich jedoch bei einer der letzten Debugging-Sessions entdeckt hatte: der Code, der mit Execute ausgeführt werden kann, kann über den Aufruf einer einzelnen Methode hinausgehen. Man kann ihn beliebig komplex formulieren, solange er syntaktisch korrekt ist, und nur auf Variablen und Objekte Bezug nimmt, die im aktivem Debugging-Context erreichbar sind:
Wenn man sich beispielsweise komplexere Strukturen per for-Schleife durchsuchen lassen möchte, und dabei mit System.out.println() Daten ausgibt, erscheinen diese in der Eclipse-Console-View.
Eine letzte Anmerkung noch: wenn man bei der Ausführung von Ausdrücken oder Code-Blöcken wieder durch Code läuft, in dem man Breakpoint platziert hat, wird Eclipse dort nicht anhalten, sondern eine Meldung ausgeben: verschachteltes Debugging wird nicht unterstützt.


