Отладка программ

В этом разделе рассмотрена отладка программы на Java.

  1. В панели Структура пакетов в проекции Java дважды щелкните на junit.samples.VectorTest.java, чтобы открыть его в редакторе.
  2. Поместите курсор на вертикальную линейку вдоль левого края области редактора напротив следующей строки в методе setUp():

    fFull.addElement (new Integer(1));

    и дважды щелкните на линейке, чтобы задать точку прерывания.

    Редактор VectorTest.java с добавленной точкой останова

    Значок точки прерывания указывает ее состояние.   Простой синий значок указывает, что точка прерывания задана, но не установлена.   

    Примечание: после загрузки класса виртуальной машиной Java точка прерывания станет установленной, и в ее значке появится галочка.

  3. В панели Структура пакетов выберите пакет junit.samples и выберите меню Отладить как..., Приложение на Java.  Когда вы запускаете программу из пакета, вам будет предложено выбрать тип среди всех классов пакета, определяющих метод main.  
  4. Выберите VectorTest в окне и нажмите OK.

    Окно выбора типа

  5. Программа будет выполняться до достижения точки прерывания.   В точке прерывания программа будет остановлена, и вам будет предложено открыть проекцию Отладка. Нажмите Да. Обратите внимание на то, что процесс остается активным (не будет завершен) в панели Отладка. Другие нити по-прежнему могут выполняться.

    Проекция Отладка

    Примечание: точка прерывания теперь помечена галочкой, поскольку класс VectorTest был загружен в виртуальную машину Java.
  6. В редакторе в проекции Отладка выберите new Vector() в строке над той, в которой задана точка прерывания, и в контекстном меню выберите Проверить.

    Редактор VectorTest.java с выделенной строкой точки останова и открытым контекстным меню

  7. Выражение вычисляется в контексте текущего фрейма стека, и появляется всплывающее меню с результатами. Вы можете отправить результат в панель Выражения, нажав показанную в выпадающем меню комбинацию клавиш.
  8. В этой панели будут показаны выражения, которые вы вычисляете во время отладки программы. Если после работы с выражением вы решите его удалить, выберите его и укажите Удалить в его контекстном меню.
  9. В панели Переменные (присутствующей на вкладке вместе с панелью Выражения) показаны значения переменных выбранного фрейма стека. Развертывайте дерево this.fFull в панели Переменные, пока не появится elementCount.
  10. Переменные (например, elementCount), показанные в панели Переменные, изменятся, когда вы пройдете через VectorTest в панели Отладка.   Для прохождения кода нажмите кнопку Пропустить (Пропустить).  Выполнение будет продолжено со следующей строки текущего метода либо, если вы достигли конца текущего метода, с метода, из которого был вызван текущий метод.

    Панель Переменные

  11. Для прохождения кода можно попробовать воспользоваться и другими кнопками пошагового выполнения (Трассировать Трассировать, Вернуться Вернуться) ).   Обратите внимание на различия в способах пошагового выполнения.
  12. Вы можете завершить сеанс отладки, разрешив программе выполняться до конца или завершив ее выполнение.

Связанные концепции
Точки прерывания
Удаленная отладка
Локальная отладка

Связанные задачи
Добавление точек прерывания
Возобновление выполнения приостановленных нитей
Запуск и отладка
Приостановление нитей

Связанные ссылки
Параметры отладки
Панель Отладка
Команды меню Запуск
Команды панели Выполнение и отладка
Панель Точки прерывания
Панель Консоль
Панель Просмотр
Панель Выражения
Панель Переменные