Подтвердить что ты не робот

Stacktrace внутри отладчика eclipse

У меня есть исключение, которое не очень хорошо обрабатывается. Я нахожусь в строке в отладчике, где у меня есть исключение в руке, но это не в моем коде, поэтому я не могу просто зарегистрировать его в этот момент. Поэтому я сижу в отладчике с исключением в моем окне переменных, и я пытаюсь выяснить, как получить от него трассировку стека, чтобы я мог найти, откуда возникло исключение, и обрабатывать его лучше.

Идеи?

4b9b3361

Ответ 1

В Debug Перспектива покажите Expressions Вид. Теперь вы можете добавить выражение e.printStackTrace(), где e - ваша переменная.

В качестве альтернативы вы можете изменить выражение на getStackTrace() и развернуть массив StackTraceElement в окне вывода Expressions.

Ответ 2

Почему бы вам не создать Исключение точки останова? Затем вам не нужно вручную отлаживать код до тех пор, пока не произойдет исключение, вместо этого отладчик просто остановится, когда это исключение будет выбрано изначально, и вы увидите живую стеклу в отладчике.

Ответ 3

Обычно я использую следующий трюк. Перейдите в представление "выражение" и добавьте выражение e.printStackTrace(). Трассировка стека будет напечатана на вашем STDERR, то есть на консоли затмения, если ваше приложение запущено внутри Eclipse IDE.