Поделиться через


Обновление платформы Java или сторонних зависимостей с помощью модернизации приложений GitHub Copilot

В этой статье показано, как использовать модернизацию приложения GitHub Copilot для обновления платформы Java или сторонних зависимостей, не требуя обновления среды выполнения JDK.

Запуск обновления платформы

Чтобы инициировать обновление этого типа, можно запустить запрос в режиме агента. Рассмотрим пример.

upgrade this Java project to Spring Boot 3.2

Снимок экрана Visual Studio Code, на котором Copilot пытается обновить только до Spring Boot 3.2.

Управление совместимостью

Если текущая версия JDK совместима с указанной версией Spring Boot, например JDK 17+ для Spring Boot 3.2, средство выполняет обновление только платформы. Исходные и целевые версии JDK остаются одинаковыми, а целевая версия Spring Boot устанавливается в соответствии с исходным запросом.

Если текущая версия JDK несовместима с целевой версией платформы, например при обновлении с JDK 8 до Spring Boot 3.2, средство автоматически обновляет JDK до минимально поддерживаемой версии, требуемой платформой , в данном случае JDK 17 , помимо выполнения обновления платформы.

Обновление сторонних библиотек

Вы также можете использовать аналогичный запрос для обновления сторонней библиотеки. Рассмотрим пример.

use the java upgrade tools to upgrade "com.google.inject.guice" to 6.0.0 in this java project

Снимок экрана: Visual Studio Code, на котором показано, как Copilot пытается обновить библиотеку Google до более новой версии.

При запуске запроса на обновление определенной сторонней библиотеки ( например, Upgrade com.google.inject.guide to version 3.17.0 GitHub Copilot анализирует текущий проект и создает план обновления, ориентированный исключительно на обновление запрошенной зависимости.

Что делает Copilot во время обновления

В рамках этого процесса Copilot может выполнять следующие задачи:

  • Измените файлы кода или конфигурации, чтобы обеспечить совместимость с новой версией библиотеки.
  • Выполните проверку сборки, чтобы убедиться, что проект успешно компилируется.
  • Выполните проверки CVE для обнаружения и устранения проблем с безопасностью.
  • Выполните проверку теста, чтобы гарантировать отсутствие новых ошибок теста.

Этот целевой поток обновления позволяет модернизировать зависимости с прозрачностью и контролем.

См. также

Модернизация приложений GitHub Copilot