Odpowiedzi na często zadawane pytania dotyczące modernizacji narzędzia GitHub Copilot.
Często zadawane pytania
Jaki jest zakres produktu modernizacji narzędzia GitHub Copilot?
Zdajemy sobie sprawę, że proces migracji jest zawsze złożony i powiązany z różnymi warstwami ekosystemów aplikacji. Obecnie ograniczamy zakres migracji do aplikacji zaplecza Java. Obsługujemy projekty tworzone za pomocą narzędzia Maven lub Gradle. Aby uzyskać informacje o kluczowych możliwościach produktu, zobacz Omówienie modernizacji w usłudze GitHub Copilot.
Czy modernizacja narzędzia GitHub Copilot zostanie w przyszłości otwarta?
Obecnie nie planujemy modernizacji usługi GitHub Copilot typu open source.
Jaki plan licencji GitHub Copilot jest potrzebny do korzystania z modernizacji narzędzia GitHub Copilot?
Modernizacja gitHub Copilot jest dostępna dla dowolnego planu GitHub Copilot.
Jak rozliczana jest modernizacja Usługi GitHub Copilot?
Modernizacja narzędzia GitHub Copilot jest funkcją narzędzia GitHub Copilot i udostępnia ten sam model rozliczeń subskrypcji co GitHub Copilot. Zadania modernizacji w usłudze GitHub Copilot korzystają z żądań o podwyższonym priorytecie, a każdy plan subskrypcji oferuje miesięczny limit żądań o podwyższonym priorytecie. Przekroczenie limitu abonementu wymaga aktualizacji abonementu lub dodatkowego zakupu żądań premium.
Oprócz języka Java muszę również migrować aplikacje napisane w innych językach. Czy istnieje plan modernizacji narzędzia GitHub Copilot, który wykracza poza środowisko Java?
Obecnie modernizacja narzędzia GitHub Copilot koncentruje się na pomaganiu w aplikacjach Java i .NET. Aktywnie zbieramy jednak wymagania i opinie klientów dotyczące potrzeby obsługi innych języków.
Czy modernizacja usługi GitHub Copilot przechowuje mój kod źródłowy?
No. Modernizacja GitHub Copilot używa tego narzędzia w taki sam sposób, jak podczas modyfikowania kodu, z tym że fragmenty kodu nie są zachowywane po zakończeniu bieżącej sesji. Nie zbieramy, przesyłamy ani nie przechowujemy Twoich umiejętności niestandardowych.
Metryki telemetrii są zbierane i analizowane w celu śledzenia użycia i skuteczności funkcji.
Aby uzyskać więcej informacji, zobacz Zasady zachowania poufności informacji firmy Microsoft.
Jakiego rodzaju aplikacje były używane do oceny modernizacji narzędzia GitHub Copilot?
Przetestowaliśmy modernizację narzędzia GitHub Copilot w setkach repozytoriów typu open source w celu zapewnienia, że kompilacja, spójność i testy jednostkowe zostaną wykonane po zakończeniu procesu modernizacji. Pracowaliśmy również intensywnie z klientami podczas fazy Technicznych Pokażeń. Opinia użytkowników jest wykorzystywana do ulepszania doświadczeń z produktem. Możesz przesłać opinię, korzystając z tego linku.
Jakie struktury są zoptymalizowane pod kątem modernizacji usługi GitHub Copilot w scenariuszach uaktualniania?
Mimo że modernizacja narzędzia GitHub Copilot koncentruje się na uaktualnianiu środowisk uruchomieniowych języka Java, optymalizuje również uaktualnienia dla następujących frameworków:
- Spring Boot do wersji 3.5.
- Java EE — javax do Dżakarta EE, do Dżakarta EE 10.
- Starsza wersja platformy Spring Framework do wersji 6.2 włącznie.
- JUnit.
- Różne zewnętrzne zależności.
Aby uzyskać więcej informacji, zobacz Dostosowywanie planu uaktualniania projektu Java.
Jakie wersje języka Java są obsługiwane w celu uaktualnienia?
Obecnie obsługujemy następujące wersje zestawu Java Development Kit (JDK):
- JDK 8
- JDK 11
- JDK 17
- JDK 21
- JDK 25
Minimalna wymagana wersja zestawu JDK dla projektu to JDK 8 i można uaktualnić projekt, aby używać dowolnej wersji do zestawu JDK 21.
Jakie typy projektów Java są obsługiwane?
Obecnie obsługiwane są tylko następujące typy projektów:
- Projekty Maven (w tym Maven Wrapper)
- Projekty w Gradle (tylko Gradle Wrapper, wersja 5+)
Projekty Gradle oparte na Kotlin DSL nie są obsługiwane.
Jakie są ograniczenia uaktualnień języka Java?
Obecnie rozszerzenie ma następujące ograniczenia funkcjonalne:
- Rozszerzenie obsługuje wyłącznie uaktualnienia języka Java i nie obsługuje innych języków programowania.
- Działa tylko z projektami Java utworzonymi przy użyciu narzędzi Maven i Gradle.
- Obsługiwane są tylko repozytoria Git. Inne systemy kontroli wersji nie są zgodne.
- Rozszerzenie nie może zagwarantować, że proponowane zmiany są optymalne lub uznane za najlepsze rozwiązania.
Zalecamy użycie następujących najlepszych rozwiązań z tym narzędziem:
- Uruchom rozszerzenie tylko w projektach, które spełniają określone cechy zgodnie z wcześniejszym opisem.
- Wykonaj szczegółowe przeglądy kodu przed scaleniem danych wyjściowych rozszerzenia z gałęziami produkcyjnymi.
- Uruchom wszystkie testy i wykonaj typowe testy kontroli jakości skojarzone z procesem zarządzania zmianami zgodnie z potrzebami.
Jak zmodernizować wiele aplikacji jednocześnie i jak można zwiększyć skalowalność procesów modernizacji dla dużej liczby aplikacji?
Interfejs wiersza polecenia usługi AppCAT umożliwia skanowanie wielu projektów jednocześnie przy użyciu flagi -bulk. Zalecamy jednak modernizację tylko jednego projektu lub aplikacji jednocześnie. Możesz utworzyć własne zadanie migracji na podstawie zmian kodu z jednego projektu i zastosować je do innych projektów, co zmniejsza powtarzalność pracy.
Którego modelu należy użyć?
Ogólnie rzecz biorąc, nowsze modele przewyższają poprzednie modele. W przypadku zadań kodowania zalecamy stosowanie modeli Claud Sonnet w celu uzyskania lepszej dokładności. Jednak aby zmniejszyć koszty, rozważ rozpoczęcie eksploracji modeli z niższym mnożnikiem.
Jak zmienić model używany przez niestandardowego agenta aplikacji AppModernization?
W programie Visual Studio Code modernizacja narzędzia GitHub Copilot domyślnie używa agenta niestandardowego AppModernization z programem Claude Sonnet 4.5, aby uzyskać najlepsze wyniki podczas aktualizowania kodu Java w celu przeprowadzenia migracji na platformę Azure. Przełącza się na model "auto", jeśli Sonnet 4.5 nie jest dostępny. Agent niestandardowy można skonfigurować do zmodyfikowania ustawienia "model", wybierając opcję Konfiguruj agentów niestandardowych z menu Agent. Alternatywnie możesz użyć selektora modelu językowego w oknie czatu, aby przełączyć modele dla bieżącej sesji czatu.
Przewodnik rozwiązywania problemów
Jakie są limity rozmiaru tokenu dla najlepszych modeli?
Aby uzyskać szczegółowe specyfikacje modelu, zobacz dokumentację narzędzia GitHub Copilot.
Jakie są wymagania operacyjne dotyczące uaktualnień środowiska uruchomieniowego i struktury Java?
Aby zapewnić pomyślne uaktualnienie środowiska uruchomieniowego i struktury Java, wymagane są następujące informacje:
- Typ projektu. Projekt musi być projektem Java opartym na usłudze Git, który można skompilować za pomocą narzędzia Maven lub Gradle.
- Docelowa wersja java — wersja zestawu JDK, do której chcesz przeprowadzić uaktualnienie — na przykład Java 21.
- Źródłowe i docelowe ścieżki zestawu JDK — ścieżki do zainstalowanych zestawów JDK dla bieżących i docelowych wersji.
- Konfiguracja narzędzia Maven/Gradle — ścieżki do narzędzi kompilacji Maven/Gradle. W przypadku Gradle obsługiwane są tylko wrappery Gradle.
Jak modernizacja usługi GitHub Copilot korzysta z serwera MCP i jak mogę sprawdzić dostępność aktualizacji lub rozwiązać problemy?
Modernizacja narzędzia GitHub Copilot korzysta z serwera MCP w celu zwiększenia możliwości przekształcania kodu. Po zainstalowaniu rozszerzenia programu Visual Studio Code serwer MCP jest zarejestrowany i uruchamiany automatycznie.
Jeśli zauważysz specjalny przycisk odświeżania w prawym dolnym rogu panelu Czat w usłudze GitHub Copilot, może to oznaczać, że dostępne są aktualizacje narzędzi. Wybierz przycisk, aby automatycznie załadować najnowsze wersje narzędzi.
"Serwer MCP modernizacji obsługiwany przez GitHub Copilot również utrzymuje dzienniki." Aby rozwiązać problemy, sprawdź pliki dziennika znajdujące się w następującej lokalizacji: %USERPROFILE%/.ghcp-appmod-java/logs
Dlaczego modernizacja narzędzia GitHub Copilot kończy się po wprowadzeniu planu bez wprowadzania żadnych zmian w kodzie?
Czasami modernizacja narzędzia GitHub Copilot wymaga wyraźnego potwierdzenia przed kontynuowaniem. Możesz wpisać tak lub kontynuować czat, aby umożliwić agentowi przejście do przodu z modyfikacjami kodu.
Dlaczego modernizacja usługi GitHub Copilot często monituje mnie o wybranie pozycji **Kontynuuj**?
Aby zapewnić bezpieczniejsze operacje, agent GitHub Copilot wielokrotnie prosi o potwierdzenie użytkownika, możesz użyć następującej konfiguracji jako obejścia.
W przypadku programu Visual Studio Code możesz wybrać strzałkę listy rozwijanej obok przycisku Kontynuuj , a następnie wybrać pozycję Zawsze zezwalaj lub zaktualizować ustawienie
chat.tools.autoApproveprogramu Visual Studio Code, abytrueautomatycznie zatwierdzać wszystkie narzędzia. Zalecamy również skonfigurowaniechat.agent.maxRequestsdo128, aby zmniejszyć liczbę kroków, które wymagają potwierdzenia do kontynuowania.W przypadku środowiska Intellij IDEA możesz wybrać przycisk Kontynuuj lub zaktualizować ustawienia, wybrać okno konfiguracji narzędzia>GitHub Copilot , a następnie wybrać pozycję Automatycznie zatwierdź. Zalecamy również włączenie zaufanych adnotacji narzędzia MCP i zwiększenie maksymalnej liczby żądań do
99.
Jakie konfiguracje sieci są wymagane do korzystania z modernizacji narzędzia GitHub Copilot w programie Visual Studio Code?
Aby zapewnić poprawne działanie rozszerzenia w programie Visual Studio Code, łączność sieciowa musi być stabilna i zezwalać na dostęp do usług GitHub Copilot. W środowiskach z ograniczeniami może być konieczne odpowiednie skonfigurowanie reguł serwera proxy lub zapory. Jeśli w oknie czatu wystąpią błędy takie jak "Model językowy niedostępny", zobacz oficjalny przewodnik rozwiązywania problemów Zarządzanie dostępem do sieci przedsiębiorstwa w usłudze GitHub Copilot.
Czy istnieją jakieś ustawienia w narzędziu GitHub Copilot, które należy skonfigurować, aby upewnić się, że mam wszystkie funkcje?
Narzędzie GitHub Copilot może zablokować niektóre generacje kodu dla plików, które często przypominają kod publiczny, na przykład pom.xml. Aby zapobiec blokowaniu tych zmian przez Copilot, należy zezwolić na sugestie zgodne z kodem publicznym. Aby uzyskać instrukcje, zobacz Włączanie lub wyłączanie sugestii pasujących do kodu publicznego.
Aby zarządzać ustawieniami narzędzia GitHub Copilot w organizacji, zobacz Włączanie funkcji Copilot w organizacji.
Dlaczego nie widzę narzędzi używających serwera protokołu kontekstu modelu (MCP) w modernizacji GitHub Copilot?
Modernizacja narzędzia GitHub Copilot korzysta z serwera MCP w celu zapewnienia wyspecjalizowanych funkcji migracji. Po wybraniu opcji Odśwież nawiązuje połączenie z tym serwerem i aktualizuje dostępne narzędzia w agencie czatu. Ta akcja jest niezbędna tylko w następujących przypadkach:
- Po otwarciu projektu Java na potrzeby migracji po raz pierwszy.
- Podczas uaktualniania rozszerzenia do nowszej wersji.
Dlaczego proces ponownego generowania kodu jest niestabilny?
Modernizacja narzędzia GitHub Copilot jest obsługiwana przez sztuczną inteligencję, więc mogą wystąpić sporadyczne błędy. Przed użyciem zawsze dokładnie przejrzyj dane wyjściowe. Możesz również ponowić próbę ponownego przetworzenia procesu, aby zobaczyć sugestie dotyczące kodu alternatywnego.
Gdzie są przechowywane umiejętności na komputerze lokalnym i jak można je udostępniać?
Wstępnie zdefiniowane zadania znajdują się w następującej lokalizacji: %USERPROFILE%.vscode\extensions\microsoft.migrate-java-to-azure-0.1.0\rag
Umiejętności niestandardowe są przechowywane w katalogu .github/skills/ w ramach twojego projektu. Zadania niestandardowe typu legacy są automatycznie migrowane z .github/appmod/custom-tasks/ oraz z danych użytkownika programu VS Code przy pierwszym uruchomieniu.
Jak wyświetlić więcej szczegółów na temat zmian w kodzie wprowadzonych przez agenta?
Agent zawsze zawiera wyjaśnienia dotyczące swoich zmian w kodzie w oknie czatu. Jednak te szczegóły mogą zostać ukryte w interfejsie użytkownika. Możesz rozwinąć odpowiedź na czacie, aby zobaczyć pełne uzasadnienie i uzasadnienie krok po kroku.
Czy mogę użyć funkcji modernizacji narzędzia GitHub Copilot w środowisku IntelliJ IDEA na platformie Linux?
Obecnie obsługujemy tylko platformy Windows i macOS.