2010-09-23 8 views
50

Bei Verwendung von Eclipse ist es beim Debugging möglich, den Wert von Variablen während der Laufzeit eines Projekts zu Testzwecken zu ändern.Ändern von Variablen in Echtzeit beim Debuggen in Eclipse?

Zum Beispiel sagen, ich habe eine Methode, die die Zahl 5 zurückgibt, aber zu Testzwecken möchte ich stattdessen 10 ausgeben. Dies ist nicht das Problem, mit dem ich konfrontiert bin, es ist ein wenig komplexer, aber es ist nur, um meine Idee zu vermitteln.

Antwort

69

sollten Sie in der Lage sein, eine Pause-Punkt zu setzen, gehen Sie in den Debug-Modus, öffnen Sie die Variablen Ansichten und hier Ändere den Inhalt der Variablen.

enter image description here

+2

Für alle anderen neuen Eclipse-Benutzer: Holen Sie Variablen Ansicht mit Fenster -> Show View -> Variablen –

+0

Es sagt, dass Typ nicht übereinstimmt, wenn versucht, Boolean setzen. versucht sowohl wahr und neu Boolean (true) und Boolean.TRUE beide sagen Type Mismatch – Jackie

+1

@Jackie, kann ich meine boolesche Variable erweitern und ändern Sie die 'Wert'-Feld von' true' in 'false' in einem Dropdown-Menü. Ich kann auch mit der rechten Maustaste auf die Variable klicken und einen ganz neuen Ausdruck dafür eingeben, und die Eingabe von 'Boolean.FALSE' funktioniert gut für mich. Poste eine neue Frage, einschließlich eines kleinen Programms und einer Version von Eclipse und einem Screenshot deiner Situation und ich kann weiter helfen. – aioobe

6

... und Sie können viel, viel mehr :-) Nur du und Idee zu geben.
Sie können den Code während des Debug-Vorgangs ändern, der Hot-Swapping ist und in einer bestimmten Debugsitzung effektiv geändert (neu kompiliert) wird. Sie können den angegebenen Methodenlauf (z. B. nach dem Abfangen des Haltepunkts) einige Male ausführen, ohne Debug erneut auszuführen -> verwenden Sie die Drop-to-Frame-Funktion im Methodenstapel.

+0

das klingt interessant..könnten Sie erklären, was Drop-to-Frame ist? – Julio

+3

Er führt gegebene Methode auf dem Stapel erneut aus. Es wird also zum ersten Mal mit den gleichen Parametern aufgerufen. sieh es hier http://www.vasanth.in/2004/06/08/eclipse-tip-rewind-during-debugging/ – Gadolin

2

Nachdem Sie den Code geändert haben, müssen Sie ihn speichern (cntrl-S), um es wirksam zu machen. Sie werden sehen, dass Ihre laufende Anwendung auf die Codeänderung nach dem Cntrl-S

reagieren Ich hoffe, dass dies für Sie funktioniert. Ich brauchte etwas Zeit, um das herauszufinden.

Verwandte Themen