Точка останова при исключении в Eclipse - как исследовать Объект исключения?

Я чувствую, что пропускаю что-то очень простое здесь. Мне настраивали Eclipse для повреждения на всех исключениях. Так, скажем, то, что это повреждается на AssertationFailedException. Окно отладки покажет, что приостановленный поток и имеет следующие данные:

Thread [Thread-1] (Suspended (exception AssertionFailedException)) 
    ContactManager.addContact(String) line: 93  
    ContactManager$ContactDataCallback.dispatch(String, Element, ClientConnector) line: 118 
    PacketHandler.handle(FractusPacket) line: 173   
    ServerConnection.syncProcess(FractusMessage) line: 122  
    ServerConnection.run() line: 248    
    Thread.run() line: 636

Однако текст, как который я ищу, такие: "Метод считывания, названный вне области заметного org.eclipse.core.databinding.observable.set.WritableSet@4b7361e2", не доступен, пока я не ступаю посредством исключения (таким образом распространяющий все это путь стек), где это производит тип исключения, текст (который является частью, которую я хочу), и отслеживание стека.

Как я могу исследовать "AssertationFailedException" (или какое-либо другое исключение) для получения сообщения, с которым было создано исключение? Конечно, я нахожусь в Проекции отладки.

19
задан Hut8 10 August 2010 в 21:51
поделиться

1 ответ

Насколько я могу судить, это не представляется возможным, что отчасти печально. Как бы то ни было, другие IDE, которые я использовал (IntelliJ IDEA, Oracle JDeveloper), похоже, справляются с этим гораздо лучше.

Например, в IntelliJ IDEA есть опция для точек останова по исключению, чтобы записывать выражение в консоль при достижении точки останова по исключению. В этом выражении «this» - это выброшенное исключение, поэтому вы можете просто зарегистрировать «this» и получить что-то вроде:

Exception 'java.lang.IllegalStateException' occurred in thread 'main' at Silly.doThing(Silly.java:18)
java.lang.IllegalStateException: dead jim

Похоже, поддержка этого была бы хорошим улучшением JDT ... Я не мог найти что-нибудь похожее в их базе данных об ошибках: https://bugs.eclipse.org/bugs/buglist.cgi?quicksearch=exception+breakpoint

1
ответ дан 30 November 2019 в 03:48
поделиться
Другие вопросы по тегам:

Похожие вопросы: