toString() недоступная ошибка в отладчике Eclipse

Выполняя метод с помощью отладчика Eclipse, я начал видеть «toString() недоступен — нет приостановленных потоков» для всех переменных, которые я хотел проверить.

Почему я получил эту ошибку и что мне делать дальше, чтобы сузить проблему в моем коде?

изменить Мой код действительно создает новый процесс, но переменные, которые я хотел проверить, существуют в основном потоке приложения, и этот поток не отображается мертвым (на панели отладки или в консоли).

Я использую Эклипс 3.4.


person Miss Cellanie    schedule 29.12.2009    source источник


Ответы (2)


Я могу придумать несколько сценариев, когда метод (в частности, toString()) будет недоступен:

  • Когда выполнение приостанавливается нажатием кнопки «Приостановить» (со значком «пауза»), а не достижением точки останова.
  • Когда вы достигли точки останова и находитесь в середине вычисления выражения.

В любом случае, даже если toString() недоступен, вы сможете проверить текущие значения в верхней части представления «Переменные».

Кроме того, попробуйте просмотреть соответствующие настройки (Window Preferences Java Debug), в частности те, которые находятся в разделе «Detail Formatters». Вы также можете попробовать кнопку «Восстановить настройки по умолчанию».

person Eli Acherkan    schedule 29.12.2009
comment
После еще нескольких экспериментов я почти уверен, что каким-то образом нахожусь в процессе вычисления выражения во время этой точки останова... хотя я так и не понял, ПОЧЕМУ =) - person Miss Cellanie; 05.01.2010

Похоже на ошибку в ранних версиях Eclipse 3.1: https://bugs.eclipse.org/bugs/show_bug.cgi?id=81249

Попробуйте обновить Eclipse?

person Joe Daley    schedule 29.12.2009
comment
Ах да, забыл упомянуть, что я использую Eclipse 3.4. - person Miss Cellanie; 29.12.2009