Eclipse Debugger вызывает toString ()

1

Я отлаживаю базу данных кодов Java (не моя), и в одном классе метод toString() переопределяется, и он имеет побочный эффект создания RuntimeException. Я вижу трассировку стека в представлении отладки Eclispe, когда у меня есть объект, выбранный в представлении "Выражения".

Нужно ли вообще отлаживать вызовы от отладчика Eclipse для toString()? Я попытался установить точки останова в методе toString() и я установил глобальную точку останова для всех обнаруженных и неперехваченных RuntimeExceptions. Но все точки останова внутри метода toString() игнорируются, и Eclipse никогда не ломается в строке, которая генерирует RuntimeException внутри toString().

Теги:
debugging

2 ответа

0
Лучший ответ

Кажется, что я нашел ответ в старой Bug-thread для Eclipse:

https://bugs.eclipse.org/bugs/show_bug.cgi?id=12592

Точки останова отключены, когда toString() вызывается в панели подробностей в отладочном представлении отладчиком.

-1

Я не вижу, как eclipse невозможно отлаживать внутри переопределенного метода toString, возможно, исключение никогда не было выбрано из toString,

Я предсказываю, может быть, вы пытаетесь получить доступ кString из неконкретизируемой переменной.

Можете ли вы быть более конкретным или сложным? вы можете опубликовать свой код, хотя.. :)

UPDATE: я предполагаю, что точка останова не была вызвана eclipse, потому что ошибка была выбрана еще до того, как были удалены точки останова. поэтому вам может потребоваться изменить начальную точку останова и разбивку кода на строки и посмотреть, где она была выбрана.

  • 0
    Сообщение внутри RuntimeExcption т.е.
  • 0
    Да, я понимаю, что это во время выполнения, и у вас могут быть логические ошибки, приводящие к тому, что эти переменные не создаются. :)
Показать ещё 9 комментариев

Ещё вопросы

Сообщество Overcoder
Наверх
Меню