Работа с системой отслеживания проблем в среде IDE NetBeans
Для выполнения типичных задач, таких как поиск и обновление проблем и создание сообщений о новых проблемах, в среде IDE NetBeans можно использовать системы отслеживания проблем. Если для проекта необходим контроль версий, то обновлять проблемы можно в процессе подтверждения. В данном учебном курсе среда IDE используется для открытия демонстрационного проекта из репозитория с управлением версиями. После открытия проекта пользователь научится просматривать проблемы проекта, сообщать о новой проблеме, применять файл заплатки, прикрепленный к проблеме, и решать проблему при подтверждении изменений. В этом учебном курсе также демонстрируется регистрация и применение в среде IDE внешних систем отслеживания проблем.
Просмотрите видео-урок по использованию интегрированной системы отслеживания проблем в среде IDE NetBeans.
Содержание
Для работы с этим учебным курсом требуется следующее программное обеспечение и ресурсы.
Примечание.В настоящем учебном курсе описана система контроля версий Subversion. Для получения дополнительных сведений об использовании Subversion в среде IDE см. раздел, посвященный настройке Subversion, в описании Обзор Subversion.
Открытие примера проекта
В этом учебном курсе используется демонстрационный проект Anagram Game, на примере которого рассматривается работа с системой отслеживания проблем в среде IDE. Исходные файлы для проекта Anagram Game хранятся в репозитории Subversion как проект NetBeans, для которого существует система отслеживания проблем Bugzilla. Задачи, решение которых демонстрируется в данном учебном курсе, могут использоваться с любой поддерживаемой системой отслеживания проблем (Bugzilla, JIRA) и системой управления версиями (Subversion, Mercurial).
Если местоположение репозитория проекта известно, с помощью мастера получения можно получать исходные файлы непосредственно из него. Для получения исходных файлов проекта напрямую с использованием мастера получения выполните следующие шаги.
- Для открытия мастера получения выберите команды "Группа" > "Subversion" > "Получить".
- В качестве адреса репозитория укажите https://svn.kenai.com/svn/anagram-game~subversion. Нажмите кнопку "Далее".
- Нажмите в мастере кнопку "Обзор" для определения папки репозитория и выберите AnagramGame. Нажмите кнопку "ОК".
- Укажите местоположение локальной папки для локального репозитория.
- Нажмите кнопку "Готово".
После нажатия кнопки "Готово" среда IDE инициализирует локальную папку в качестве репозитория Subversion и выполняет проверку исходных файлов проекта на выходе.
- Щелкните команду "Открыть проект" в диалоговом окне, которое появится после завершения проверки.
После нажатия кнопки "Открыть проект" в диалоговом окне "Проекты" открывается проект NetBeans.
Примечание. В данном учебном курсе описывается работа с трассировкой стека и применяется заплатка, привязанная к проблеме. Для этого потребуется получить исходные файлы проекта.
Регистрация системы отслеживания проблем
В среде IDE можно зарегистрировать любое количество поддерживаемых систем отслеживания проблем. После регистрации системы ее имя добавляется в раскрывающийся список "Системы отслеживания проблем" в формах проблем и диалоговых окнах фиксации. Это позволяет просматривать, обновлять и создавать записи проблем в среде IDE. В диалоговом окне "Службы" в среде IDE можно зарегистрировать существующую систему отслеживания проблем Bugzilla или JIRA.
Примечание. Для использования системы отслеживания проблем JIRA необходимо загрузить подключаемый модуль поддержки JIRA из центра обновления. Дополнительные сведения доступны на странице часто задаваемых вопросов по NetBeans Как загрузить и установить подключаемый модуль JIRA для NetBeans?
Для регистрации системы отслеживания проблем для проекта Anagram Game выполните следующие действия.
- Щелкните узел правой кнопкой мыши "Системы отслеживания проблем" в окне "Службы" и выберите "Создать систему отслеживания проблем".
- Выберите соединитель для системы отслеживания проблем.
(В проекте Anagram Game используется система отслеживания Bugzilla.)
- Укажите для системы отслеживания проблем значение AnagramGame.
Это имя используется для идентификации системы отслеживания проблем в окнах и диалоговых окнах среды IDE.
- Укажите URL-адрес системы отслеживания проблем.
(Адрес системы отслеживания проблем для проекта Anagram Game — http://kenai.com/bugzilla/)
- Для проверки соединения с системой отслеживания проблем нажмите кнопку "Проверить". Нажмите кнопку "ОК".
При нажатии кнопки "OK" среда IDE добавляет узел новой системы отслеживания проблем в узел "Системы отслеживания проблем" в окне "Службы".
После добавления системы отслеживания проблем можно щелкнуть соответствующий ей узел правой кнопкой мыши и выполнить следующие действия:
- поиск существующих проблем;
- создание сообщения о новой проблеме;
- изменение данных системы отслеживания проблем;
- удаление системы отслеживания проблем из списка.
Кроме того, поиск и сообщение о проблемах можно выполнять путем выбора задачи в меню "Группа".
Поиск и просмотр проблем
В этом разделе описывается использование диалогового окна "Поиск проблем" в среде IDE, которое используется для получения списка открытых проблем для проекта Anagram Game. Система отслеживания проблем, связанная с проектом Anagram Game, содержит некоторые примеры проблем. Открыть диалоговое окно "Поиск проблем" можно путем выбора задачи в меню "Группа".
Поиск проблем и сохранение поисковых запросов
В этом упражнении описывается форма "Поиск проблем", с помощью которой выполняется поиск всех новых проблем P1.
- Для открытия диалогового окна "Поиск проблем" выберите в главном меню команды "Группа" > "Поиск проблем".
Также можно щелкнуть правой кнопкой мыши узел системы отслеживания проблем в диалоговом окне "Служба" и выбрать команду "Поиск проблем".
- Выберите в раскрывающемся списке "Системы отслеживания проблем" проект Anagram Game.
- В списке продуктов выберите anagram-game.
- Укажите дополнительные критерии поиска путем выбора статуса Новый и приоритета P1. Нажмите кнопку "Search".
При нажатия кнопки "Поиск" в среде IDE выполняется поиск всех проблем, соответствующих указанным критериям, и выводится список результатов в нижней части формы.
- Выберите в нижней части вкладки "Поиск проблем" команду "Сохранить запрос".
- В диалоговом окне "Сохранение запроса" в качестве имени запроса введите Создать проблемы P1 . Нажмите кнопку "Сохранить".
При выборе "Сохранить" в среде IDE открывается вкладка "Запрос", на которой отображаются результаты запроса.
После сохранения запроса можно снова выполнить его в любое время на вкладке "Поиск проблем". Для этого щелкните имя рядом со списком "Мои запросы". Для открытия проблемы на новой вкладке можно дважды щелкнуть запись проблемы в списке.
На вкладке "Запрос" можно обновить список проблем следующим образом:
- сортировка отображаемого списка проблем щелчком заголовка столбца;
- применение фильтра к отображаемым результатам с помощью раскрывающегося списка "Фильтр";
- запрос последнего списка проблем нажатием кнопки "Обновить".
Для изменения критериев поиск сохраненного запроса выберите команду "Изменить запрос" на вкладке "Запрос".
Просмотр и обновление проблемы
В этом упражнении описывается просмотр и изменение подробных данных одной из проблем в проекте "Anagram Game".
Для просмотра и обновления проблемы в среде IDE дважды щелкните проблему в списке результатов поиска. Для просмотра проблемы не требуется быть участником проекта или выполнить вход в систему; с другой стороны, если необходимо изменить проблему с целью ее решения, добавить комментарии, изменить приоритет и т.д., то пользователь должен быть зарегистрирован в системе отслеживания проблем данного проекта и выполнить вход в систему.
Если пользователь присоединяется к проекту Kenai в качестве участника, то он автоматически регистрируется в системе отслеживания проблем этого проекта, и у него появляются возможности изменения проблем и добавления новых проблем.
- Откройте список проблем проекта.
- Дважды щелкните элемент "Issue #257" Опечатка в библиотеке StaticWordLibrary для просмотра подробных сведений о проблеме в главном окне.
- Внесите требуемые изменения в эти сведения и добавьте комментарий. Нажмите кнопку "Submit Changes".
При нажатии кнопки "Подтвердить изменения" средой IDE выполняется подключение к системе отслеживания проблем и обновление подробной информации о проблеме. Пользователю, вносившему изменения в проблему, отправляется электронное письмо, это же письмо отправляется уполномоченному лицу и по другим адресам, указанным в проблеме.
Примечание. В настоящем учебном курсе процедура внесения изменений в проблему не описывается (это действие недоступно), поскольку пользователь не является участником проекта "Anagram Game".
Сообщение о новой проблеме
В этом разделе демонстрируется отправка новой проблемы проекта "Anagram Game" в среде IDE.
Для отправки новой проблемы в зарегистрированную систему отслеживания проблем в среде IDE используется форма "Сообщить о новой проблеме". Для открытия этой формы выберите в главном меню "Группа" > "Сообщить о проблеме", затем выберите в раскрывающемся списке в форме систему отслеживания проблем.
Примечание. Для создания сообщения о проблеме пользователь должен быть зарегистрирован в системе отслеживания проблем и выполнить вход в систему. Если вход в систему не выполнен, то при попытке отправки проблемы появится запрос на вход в систему.
Для создания сообщения о новой проблеме проекта Anagram Game выполните следующие действия.
- Для открытия диалогового окна "Сообщить о новой проблеме" выберите в главном меню команды "Группа" > "Сообщить о проблеме".
- Выберите систему отслеживания в раскрывающемся списке "Системы отслеживания проблем".
- Выберите проект в раскрывающемся списке "Продукты".
- Введите информацию о проблеме, общее описание и описание. Нажмите кнопку "Отправить проблему".
При нажатии кнопки "Отправить проблему" среда IDE отправляет проблему в систему отслеживания.
Примечание. В настоящем руководстве не описывается процедура отправки проблемы (это действие недоступно), поскольку пользователь не является участником проекта.
Работа с трассировками стеков
Если описание проблемы содержит трассировку стека, связанную с исходным кодом проекта, то от проблемы можно напрямую перейти к соответствующей строке в локальном исходном коде. Трассировка стека, копируемая в проблему, может использоваться аналогично трассировке стека в окне "Вывод".
Примечание. Для обеспечения возможности перехода к строкам в исходном коде из трассировки стека исходные файлы проекта должны быть проверены, а проект должен быть открыт в среде IDE.
- Откройте проблему 1446 Невозможно запустить проект AnagramGame из-за исключения NullPointerException.
Проблема 1446 в проекте "Anagram Game" имеет следующее содержание: при запуске приложения возникает исключение NullPointerException.
- В описании проблемы щелкните следующую строку в трассировке стека:
com.toy.anagrams.ui.Anagrams$2.windowOpened(Anagrams.java:72)
Описание проблемы содержит копию трассировки стека из окна "Вывод".
При щелчке указанной строки в трассировке стека локальный файл будет открыт средой IDE в редакторе, при этом на указанной строке в исходном коде будет установлен курсор в режиме вставки.
Примечание. Открытие локального файла в среде IDE возможно благодаря получению исходных файлов, рассмотренному ранее.
Исключение можно воспроизвести: для этого запустите приложение "Anagram Game" и просмотрите результаты его работы в окне "Вывод". В окне "Вывод" отображаются результаты, аналогичные представленным ниже.
Открытие и применение файла заплатки
В данном разделе описывается процедура просмотра прикрепленного файла заплатки и его применения.
Согласно проблеме 1446, при запуске приложения "Anagram Game" возникает исключение NullPointerException. К проблеме добавлен файл заплатки, содержащий исправление для NullPointerException. Если к проблеме добавлен файл заплатки, его можно открыть и применить заплатку непосредственно в окне с проблемой.
- Откройте проблему 1446 Невозможно запустить проект AnagramGame из-за исключения NullPointerException.
- Щелкните имя файла заплатки, добавленного к проблеме.
При щелчке по имени файла этот файл будет открыт средой IDE в редакторе. Обратите внимание на то, что применение заплатки вызвало следующие изменения в классе StaticWordLibrary.java.
- static WordLibrary DEFAULT;
+ final static WordLibrary DEFAULT = new StaticWordLibrary();
Закройте файл заплатки.
- Для открытия диалогового окна "Применение заплатки" нажмите кнопку "Применить" рядом с именем прикрепленного файла заплатки в окне проблемы.
- Разверните проект "Anagram Game" и выберите каталог "Исходные файлы" в диалоговом окне "Apply Patch". Нажмите кнопку "Apply".
Примечание. В процессе применения заплатки необходимо выбрать каталог файла согласно корневому местоположению при создании заплатки. В этом случае при применении заплатки в качестве корневого местоположения необходимо указать каталог "Исходные файлы".
После нажатия кнопки "Применить" заплатка применяется средой IDE и в класс StaticWordLibrary.java вносятся изменения. Можно открыть этот файл в редакторе и просмотреть изменения. В окне "Проекты" можно заметить, что среда IDE пометила этот файл как измененный.
Интеграция управления версиями
В этом разделе описывается процедура обновления проблем в процессе подтверждения изменений в исходных файлах проекта "Anagram Game".
В среду IDE интегрирована поддержка контроля версий исходного кода (посредством Subversion или Mercurial) и нескольких систем отслеживания проблем. Интегрированная поддержка позволяет обновлять проблемы в зарегистрированной системе отслеживания проблем в процессе подтверждения.
К числу служб, предоставляемых для размещенных на узле Kenai проектов, относятся также выделенные репозитории управления версиями. После открытия проекта Kenai "Anagram Game" и проверки исходных файлов проекта средой IDE выполняется автоматическая привязка проекта к соответствующей системе отслеживания проблем.
Для получения дополнительных сведений об использовании Subversion в среде IDE NetBeans см. Обзор Subversion.
Для получения дополнительных сведений о поддержке систем управления версиями в Kenai см. документацию по Kenai в разделе Управление исходным кодом.
В этом упражнении демонстрируется обновление проблемы в процессе подтверждения.
- Разверните пакет com.toy.anagrams.lib в узле "Исходные файлы" в окне "Проекты".
Проект "Anagram Game" уже внесен в репозиторий контроля версий. Имена измененных исходных файлов, которые необходимо подтвердить в репозитории, обозначены синим. Значки на каталогах указывают, что они содержат файлы, которые следует подтвердить.
- Щелкните файл StaticWordLibrary.java правой кнопкой мыши и выберите "Subversion" > "Зафиксировать" для открытия диалогового окна "Фиксация".
- Введите сообщение "Сообщение о фиксации" с описанием подтверждения.
- Разверните панель "Обновить проблему" в диалоговом окне "Фиксация".
- Выберите в раскрывающемся списке систему отслеживания проблем для проекта Anagram Game (если она еще не выбрана).
- В поле "Проблема" введите число 1446.
В результате внесение изменений в подтверждаемый файл StaticWordLibrary.java исключение, упомянутое в проблеме 1446, будет исправлено.
В поле "Проблема" можно ввести идентификатор проблемы (1446) или фрагмент текста описания проблемы (NullPointerException). В среде IDE отображается список проблем, соответствующих данному тексту.
- Установите флажок Разрешить как подтвержденное.
В результате установки флажка "Разрешить как подтвержденное" статус проблемы изменится на "Разрешена".
- (Необязательно) Для добавления подробных данных выберите команду Добавить подробности к сообщению фиксации и заданию. Для открытия диалогового окна с возможностью настройки форматирования дополнительных данных нажмите кнопку Изменить.
- Нажмите кнопку "Commit".
При нажатии кнопки "Зафиксировать" среда IDE фиксирует изменения в репозитории и обновляет проблему. Если вход в систему не выполнен, то будет выведен запрос имени пользователя и пароля.
Примечание. В настоящем руководстве не описывается процедура отправки проблемы (это действие недоступно), поскольку пользователь не является участником проекта.
В этом учебном курсе описывалось использование IDE при работе с системами отслеживания проблем Интегрированная поддержка систем отслеживания проблем Bugzilla и JIRA позволяет просматривать и обновлять проблемы, а также сообщать о них, непосредственно из среды IDE. При работе с проектами, расположенными на Team Server и связанными с системами отслеживания проблем, также расположенными на этом сервере, обработку проблем можно выполнять на инструментальной панели совместной работы.
При работе с другими проектами можно зарегистрировать систему отслеживания проблем Bugzilla или JIRA в среде IDE и выполнять просмотр и создание сообщений о проблемах с помощью команд меню "Группа".
Дополнительные материалы
Для получения дополнительных сведений об использовании среды IDE NetBeans в среде общей разработки см. перечисленные ниже учебные курсы.