Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
W tym artykule pokazano, jak za pomocą modernizacji aplikacji GitHub Copilot uaktualnić platformę Java lub zależność innej firmy bez konieczności uaktualniania środowiska uruchomieniowego zestawu JDK.
Inicjowanie uaktualnienia struktury
Aby zainicjować ten typ uaktualnienia, możesz uruchomić monit w trybie agenta. Przykład:
upgrade this Java project to Spring Boot 3.2
Obsługa zgodności
Jeśli bieżąca wersja zestawu JDK jest zgodna z określoną wersją platformy Spring Boot — na przykład zestaw JDK 17+ dla platformy Spring Boot 3.2 — narzędzie wykonuje uaktualnienie tylko dla platformy. Zarówno źródłowe, jak i docelowe wersje zestawu JDK pozostają takie same, a docelowa wersja platformy Spring Boot jest ustawiona zgodnie z początkowym monitem.
Jeśli bieżąca wersja zestawu JDK nie jest zgodna z wersją platformy docelowej — na przykład podczas uaktualniania z zestawu JDK 8 do platformy Spring Boot 3.2 — narzędzie automatycznie uaktualnia zestaw JDK do minimalnej obsługiwanej wersji wymaganej przez strukturę — w tym przypadku zestawu JDK 17 — oprócz przeprowadzania uaktualnienia struktury.
Uaktualnianie bibliotek innych firm
Możesz również użyć podobnego monitu, aby uaktualnić bibliotekę innej firmy. Przykład:
use the java upgrade tools to upgrade "com.google.inject.guice" to 6.0.0 in this java project
Po zainicjowaniu monitu o uaktualnienie określonej biblioteki innej firmy — na przykład Upgrade com.google.inject.guide to version 3.17.0 — GitHub Copilot analizuje bieżący projekt i generuje plan uaktualnienia skoncentrowany wyłącznie na aktualizowaniu żądanej zależności.
Co robi copilot podczas uaktualniania
W ramach tego procesu copilot może wykonywać następujące zadania:
- Zmodyfikuj pliki kodu lub konfiguracji, aby zapewnić zgodność z nową wersją biblioteki.
- Przeprowadź walidację kompilacji, aby potwierdzić pomyślne skompilowanie projektu.
- Uruchom testy CVE, aby wykryć i wyświetlić wszelkie problemy z zabezpieczeniami.
- Wykonaj walidację testu, aby upewnić się, że nie wprowadzono żadnych nowych niepowodzeń testów.
Ten docelowy przepływ uaktualniania umożliwia modernizację zależności dzięki przejrzystości i kontroli.