Навигация по стеку вызовов Java в Eclipse - PullRequest
35 голосов
/ 15 июля 2010

В таких отладчиках, как GDB , когда вы останавливаетесь на точке останова, вы можете легко перемещаться вверх по стеку вызовов и просматривать соответствующие данные источника и фрейма стека.

Как вы делаете это в Eclipse?

Ответы [ 5 ]

51 голосов
/ 15 июля 2010

В " перспективе отладки " отобразите представление с именем "debug". Для каждого потока, который в данный момент остановлен, это представление показывает полный стек вызовов. Щелчок по одному элементу этого стека переключает представление редактора для отображения соответствующего класса, а представление «переменные» отображает переменные этого элемента стека.

2 голосов
/ 27 января 2014

Обратите внимание, что ваша "Отладочная перспектива" может быть по умолчанию свернута в режим просмотра "крошка", что означает, что вы будете видеть только одну строку трассировки стека за раз.

Чтобы полностью развернуть его и увидеть трассировку стека в дереве:

  • нажмите на стрелку вниз в верхнем правом углу представления отладки.
  • выберите «Макет | Дерево»
1 голос
/ 15 июля 2010

В визуальном отладчике вы увидите всю трассировку стека.Просто нажмите на уровень, который вы хотите проверить, чтобы сделать это.Определенно проще, чем использование gdb команд.: -)

1 голос
/ 15 июля 2010

вы просто нажимаете на фрейм стека в представлении Debug.

0 голосов
/ 10 декабря 2018

Сначала установите одну или несколько точек останова в вашем коде, которые, как вы знаете, будут попадать, затем отладьте ваше приложение одним из следующих способов:

  • Убедитесь, что файл, содержащий ваш mainв настоящее время выбран метод
  • Нажмите F11

или

  • Щелкните правой кнопкой мыши файл в проводнике пакетов, содержащий ваш main метод
  • Выберите «Отладка как> Java-приложение»

Eclipse теперь должен отображать «перспективу отладки» (ее можно открыть вручную, используя «Окно»> «Перспектива»> «Открыть проекцию»> «Отладка»)

Одиниз ваших точек останова была достигнута, вы должны увидеть кадр в перспективе отладки под названием «Отладка» (чтобы открыть вручную, используйте Window> Show View> Debug).Это выглядит так:

enter image description here

Область, выделенная серым цветом, показывает каждый шаг трассировки стека для потока, который в данный момент приостановленточка останова.Фактическая часть стека вызовов, которая в данный момент приостановлена, выделяется серым цветом (поэтому, если у вас есть несколько потоков, вы можете увидеть, какая из них в настоящий момент приостановлена, выполнив поиск выделенной строки).Щелчок по любой строке представления трассировки стека покажет детали (например, «переменные» в этой точке стека)

...