Pause, wenn eine Ausnahme ausgelöst wird

244

Visual Studio hat die Option, automatisch in den Debugger einzubrechen, wenn eine nicht behandelte Ausnahme ausgelöst wird. Verfügt Eclipse über ähnliche Funktionen?

keithwarren7
quelle
8
gut, ich habe das bei meiner Suche vor dem Post nicht "verstanden"
keithwarren7

Antworten:

306

Sie können die genaue Liste der Ausnahmen definieren, für die Sie einen Haltepunkt festlegen möchten, auch wenn diese Ausnahmen nicht erfasst wurden (was " unhandled" entsprechen sollte).

ungefangen

VonC
quelle
11
Was hier nicht klar ist, ist, ob der Debugger bei JEDER Ausnahme unterbrochen wird, wenn "Bei nicht erfassten Ausnahmen anhalten" deaktiviert ist. Bedeutet dies im obigen Beispiel eine Unterbrechung bei nicht erfassten Ausnahmen vom Typ "ActivationException" oder bedeutet dies eine Unterbrechung bei einer nicht erfassten Ausnahme eines Typs? Sehr schlecht beschrieben.
AndroidDev
51

Gehen Sie zum Haltepunktfenster, es gibt eine Schaltfläche, die wie J! Aussieht. Dort können Sie Haltepunkte für Java-Ausnahmen festlegen, entweder abgefangen oder nicht erfasst. Sie können Klassen referenzieren oder Mustervergleicher für Ausnahmenamen verwenden.

Wählen Sie unter Fenster -> Einstellungen Java -> Debuggen aus, und es gibt ein Kontrollkästchen, mit dem der Debugger angewiesen wird, bei nicht erfassten Ausnahmen zu brechen

Carles Barrobés
quelle
1
Vielen Dank. Meins hatte kein "J!"
Jay Sullivan
1
@ JaySullivan Es befindet sich ganz rechts. Wenn der Bereich also zu klein ist, müssen Sie ihn erweitern. Es ist das eingekreiste Symbol oben rechts im Screenshot in der akzeptierten Antwort .
Nateowami
1
Die Window / Preference / Java / Debug- Lösung ist eine wirklich gute Ergänzung zur akzeptierten Antwort. Diese Antwort verdient mehr positive Stimmen.
pdem
1
Sie müssen auch: Subclasses of this exception überprüft - habe das von hier: stackoverflow.com/a/15866667/1599699
Andrew