Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этой статье описывается настройка плана обновления проекта Java, созданного модернизацией приложения GitHub Copilot.
При запуске сеанса обновления GitHub Copilot создает файл plan.md , который описывает шаги и задачи, необходимые для обновления. Этот файл служит схемой для процесса обновления, который можно настроить в соответствии с потребностями проекта.
После создания файла plan.md средство автоматически открывается в редакторе Visual Studio Code. На этом этапе можно просмотреть и настроить план, чтобы он соответствовал конкретным целям обновления.
Пример структуры файлов plan.md
В следующих разделах описывается пример структуры файлов plan.md для иллюстрации точек настройки.
Ключевые параметры
В следующих разделах описываются ключевые параметры плана, которые можно изменить.
Параметр команды средства сборки
Этот параметр расположен в разделе "Сведения о проекте" и позволяет определять настраиваемые параметры командной строки для выполнения средства сборки. Допустимые параметры см. в документации Maven CLI или Gradle CLI в зависимости от вашего проекта.
Примеры.
Для Maven:
Build tool command options: -Dmaven.javadoc.skip=true -s "/path/to/custom/settings.xml"Для Gradle:
Build tool command options: --info -Penv=production
Замечание
Замените путь действительным settings местоположением файла по мере надобности. Этот путь показан только примером.
Проверка теста
В разделе "Дополнительные задачи " можно включить или отключить выполнение теста, изменив run tests before and after the upgrade флаг.
- Установите
true, чтобы включить модульные тесты до и после обновления. - Установите значение
false, чтобы пропустить проверку теста.
Этот параметр определяет, будет ли средство выполнять модульные тесты для проверки функциональной корректности во время обновления.
Изменив эти параметры, вы можете точно настроить процесс обновления, чтобы лучше соответствовать требованиям проекта.
Настройка целей обновления и предоставление рекомендаций
В сценариях обновления Java часто требуется настройка за пределами стандартных обновлений JDK или платформы, например для применения изменений кода для конкретного проекта или обновления внутренних библиотек, которые средство не обнаруживает автоматически. Для поддержки этих потребностей модернизация приложений GitHub Copilot теперь включает настройку в рамках плана обновления. Эта возможность позволяет предоставлять собственные рецепты, инструкции и входные данные для руководства по процессу обновления. Эту настройку можно выполнить, изменив разделы "Цели обновления " и " Рекомендации ".
Раздел "Цели обновления"
В разделе "Цели обновления " теперь можно указать дополнительные целевые показатели обновления вместе с целями в исходном запросе. Например, если основная задача заключается в обновлении проекта с Java 17 до Java 21, но для проекта также требуется обновление Log4j с 1.x до 2.x, можно указать, что является дополнительной целью, как показано в следующем примере запроса:
## Upgrade Goals
- Upgrade from Java 17 to 21
- Upgrade org.apache.logging.log4j:* to 2.24.3
- Upgrade org.internal.lib to 2.0
Раздел "Рекомендации"
В разделе "Рекомендации " определяется, как Copilot должен выполнять обновление. В разделе "Цели обновления " основное внимание уделяется обновлению, в разделе "Рекомендации " описаны методология, соглашения, инструменты и правила, которые приводят к поведению Copilot во время преобразования кода.
Вы можете включить любые инструкции, помогающие управлять тем, как Copilot изменяет код, например следующие инструкции:
- Руководство по использованию инструментов, рецептов или платформ для изменения кода.
- Ограничения или запреты на определенные подходы к обновлению.
- Требования к соглашениям или стилю кода.
- Ссылки на внутренние файлы, документацию или сценарии, к которые агент может получить доступ.
- Знания о домене, полезные для устранения ошибок или выполнения обновлений.
- Требования к описанию того, как агент должен замечать или комментировать изменения кода.
- Инструкции по очистке временных артефактов, созданных во время процесса обновления.
Содержимое этого раздела может быть обычным текстом, гиперссылками или ссылками на локальные файлы, пока Copilot может получить к ним доступ.
Примеры.
## Guidelines
- Do not use Log4j 1 to Log4J 2 API bridge to upgrade to Log4J 2.
- Please follow the code conventions defined in /xxx/bbb/rules.txt.
- Please provide detailed comments explaining why each code change is necessary.
- "com.example:internal-lib:2.0.0" is compatible with Java 21.
- Use our internal MCP tool get_internal_lib_knowledge to retrieve compatibility information for internal libraries.
- After the upgrade, please remove any temporary files created during the process, such as code modification scripts.