Spec-Zone .ru
спецификации, руководства, описания, API
Содержание документации

Информация о версии для javadt отладчика

Как демонстрация Интерфейса Отладки Java (JDI), мы обеспечиваем исходный код для простого средства отладки GUI - javadt. Это включается как пример и демонстрация JDI. Это не законченный или полируемый отладчик и пропускает много важных функций реальной работы отладки.

Вызов javadt

javadt может быть выполнен, выполняясь:

   java gui.GUI <options>.. <class-name>

где <class - имя> является именем, Вы обычно помещали бы в java командная строка. Отметьте: пути к Библиотеке JDI и к скомпилированным javadt файлам class должны быть на пути class, используемом, чтобы вызвать gui.GUI. Убедитесь что Java файл lib/tools.jar 2 SDK на Вашем пути class.

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

   javadt gui.GUI -classpath . Hello
Отметьте: это -classpath опция управляет путем class для Hello приложение. Как только окно появляется, можно дать команду 'выполнения', чтобы сразу начать выполнение. Также возможно дать имя class в команде 'выполнения', когда это может быть опущено, вызывая отладчик от оболочки.

Путь к классу может также быть установлен изнутри отладчика, используя команду 'пути к классу'. В настоящий момент другие параметры VM должны быть даны на командной строке оболочки, когда отладчик первоначально вызывается. Последний раз упомянутый путь к классу, параметры VM, основное имя class, и параметры программы сохраняются как значения по умолчанию для более поздних команд 'выполнения' и 'загрузки'. (К сожалению, в настоящее время, отладчик, вероятно, откажет, если Вы попытаетесь начать другой сеанс отладки с другого процесса отлаживаемой программы изнутри того же самого вызова отладчика. Следует выйти к оболочке и запустить новый процесс отладчика.)

Используя javadt

javadt обычно выводит на экран контекст, связанный с "текущим потоком", то есть, поток, который последний раз встретился с контрольной точкой, выдавал непойманное исключение, или единственно ступился пользователем. Когда выполнение программы приостанавливается из-за одного из этих событий, текущий поток существует, и javadt выводит на экран следующую информацию об этом:

Кроме того, снабженная вкладками область позволяет пользователю просматривать одно из трех дополнительных представлений:

Щелкая по имени исходного файла, исходное представление может быть предписано вывести на экран это. Аналогично, щелчок по потоку сделает тот поток текущим потоком. Эти функции обычно используются, в то время как программа приостанавливается, например, в контрольной точке. После возобновления и обнаружения с другой контрольной точкой, например, будет автоматически сброшен текущий поток, и представления будут обновлены. Представления размещают дисплей javadt рядом, и являются корректируемыми в размере.

javadt функциональность является довольно основной, таким образом окно взаимодействия командной строки также при условии, что предоставляет доступ к функциям, которые еще не представляются в javadt. В частности необходимо использовать командную строку, чтобы установить контрольные точки и исследовать переменные. javadt интерпретатор команд отладчика реализует примерно подмножество jdb функциональности, но добавляет несколько собственных команд. Списки команд 'справки' полный набор команд и их функции. Ярлыки для ряда наиболее распространенных команд обеспечиваются на кнопочной панели наверху дисплея.

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

Отладчик ожидает находить исходный код программы своего sourcepath, устанавливать с 'использованием' или 'sourcepath' командой. Если Вы находите, что источники не выводятся на экран, потому что sourcepath неправильный, можно изменить его тогда, и исходное представление будет сразу обновлено.

С сообщением "Никакой текущий поток" часто встречаются, ступая через программу. Это сообщение не означает, что поток или VM умерли, просто что текущий поток неопределен. Эта ситуация может легко неожиданно произойти, когда ступившая программа ожидает, eg., для ввода. VM, кажется, останавливается, как это было бы после успешного завершения шага, но это, как полагают, "работает", не "прерывается". Подсказка в области взаимодействия команды указывает на состояние, изменяясь на имя потока и число фрейма, когда VM прерывается. Когда это работает, быстрая "Команда:" выводится на экран.

Источник для javadt

Полный исходный код для javadt включается в com/sun/tools/example/debug каталог examples.jar. Отметьте: этот каталог также включает источник для jdb. Исходный код этих приложений в качестве примера включается, чтобы предоставить конкретные примеры разработчикам отладчика. Пример кода может использоваться, изменен и перераспределен разработчиками отладчика, если они придерживаются сроков в уведомлении об авторском праве.

javadt использует следующие пакеты (найденный в com/sun/tools/example/debug каталог examples.jar):

gui
Код пользовательского интерфейса
bdi
Код ядра отладчика
events
Код Набора события
expr
Код обработки выражения

Здание javadt

Создавать javadt классы из обеспеченных исходных файлов в debuggers каталог, Вы должны только скомпилировать их. Никакие специальные опции не требуются кроме тех, которые устанавливают Ваш путь к классу, чтобы включать Библиотеку JDI. Однако, если хотят изменить синтаксический анализатор выражения в файле Expr.jj, Вы будете нуждаться в генераторе синтаксического анализатора JavaCC.


Oracle и/или его филиалы Авторское право © 1993, 2012, Oracle и/или его филиалы. Все права защищены.
Свяжитесь с Нами