Responde a perguntas frequentes sobre a modernização do aplicativo GitHub Copilot.
FAQ
Qual é o escopo do produto da modernização do aplicativo GitHub Copilot?
Reconhecemos que o processo de migração é sempre complexo e interligado, com diferentes camadas de ecossistemas de aplicativos. No momento, estamos limitando o escopo de migração para aplicativos de back-end Java. Apoiamos projetos que são construídos com Maven ou Gradle. Para obter informações sobre os principais recursos do produto, consulte a Visão geral da modernização do aplicativo GitHub Copilot.
A modernização do aplicativo GitHub Copilot será de código aberto no futuro?
Atualmente, não temos planos de modernização do aplicativo GitHub Copilot de código aberto.
De que plano de licença do GitHub Copilot preciso para usar a modernização do aplicativo GitHub Copilot?
A modernização da aplicação GitHub Copilot está disponível para qualquer plano GitHub Copilot.
Como é cobrada a modernização do aplicativo GitHub Copilot?
A modernização do aplicativo GitHub Copilot é um recurso do GitHub Copilot e compartilha o mesmo modelo de cobrança de assinatura do GitHub Copilot. As tarefas de modernização de aplicativos consomem solicitações premium, com cada plano de assinatura oferecendo uma franquia mensal de solicitações premium. Exceder o limite do plano requer um upgrade do plano ou compra extra de solicitações premium.
Além do Java, também preciso migrar aplicativos escritos em outras linguagens. Existe um plano para que a modernização do aplicativo GitHub Copilot vá além do Java?
Atualmente, a modernização do aplicativo GitHub Copilot está focada em ajudar com aplicativos Java e .NET. No entanto, estamos coletando ativamente requisitos e feedback dos clientes sobre a necessidade de oferecer suporte a outros idiomas.
A modernização do aplicativo GitHub Copilot armazena meu código-fonte?
No. A modernização do aplicativo GitHub Copilot usa o GitHub Copilot da mesma forma que você o usa para modificar o código, que não retém trechos de código além da sessão imediata. Também não recolhemos, transmitimos ou armazenamos as suas tarefas personalizadas.
As métricas de telemetria são coletadas e analisadas para acompanhar o uso e a eficácia dos recursos.
Para obter mais informações, consulte a Declaração de Privacidade da Microsoft.
Que tipo de aplicativos você usou para avaliar a modernização do aplicativo GitHub Copilot?
Testamos a modernização do aplicativo GitHub Copilot em centenas de repositórios de código aberto para garantir que os testes de compilação, consistência e unidade passem após o processo de modernização. Também trabalhamos extensivamente com os clientes durante a fase de visualização técnica. A entrada dos usuários é usada para melhorar a experiência do produto. Você pode enviar comentários usando este link.
Para quais estruturas a modernização do aplicativo GitHub Copilot é otimizada em cenários de atualização?
Embora a modernização do aplicativo GitHub Copilot se concentre na atualização de tempos de execução Java, ela também otimiza as atualizações para as seguintes estruturas:
- Spring Boot até a versão 3.5.
- Java EE - Javax para Jacarta EE, até Jacarta EE 10.
- Legacy Spring Framework até a versão 6.2+.
- JUnit.
- Várias dependências de terceiros.
Para obter mais informações, consulte Personalizar o plano de atualização do projeto Java.
Quais versões do Java são suportadas para upgrade?
Atualmente, suportamos as seguintes versões do Java Development Kit (JDK):
- JDK 8
- JDK 11
- JDK 17
- JDK 21
- JDK 25
A versão mínima necessária do JDK para um projeto é o JDK 8, e você pode atualizar o projeto para usar qualquer versão até o JDK 21.
Que tipos de projetos Java são suportados?
Atualmente, apenas os seguintes tipos de projetos são suportados:
- Projetos Maven (incluindo Maven Wrapper)
- Projetos Gradle (somente Gradle Wrapper, versão 5+)
Os projetos Gradle baseados em DSL de Kotlin não são suportados.
Quais são as limitações dos upgrades Java?
Atualmente, a extensão tem as seguintes limitações funcionais:
- A extensão suporta exclusivamente atualizações Java e não atende a outras linguagens de programação.
- Ele funciona apenas com projetos Java construídos usando Maven e Gradle.
- Apenas repositórios Git são suportados. Outros sistemas de controle de versão não são compatíveis.
- A extensão não pode garantir que as alterações propostas sejam ótimas ou consideradas melhores práticas.
Recomendamos o uso das seguintes práticas recomendadas com esta ferramenta:
- Execute a extensão somente em projetos que atendam às características especificadas, conforme descrito anteriormente.
- Conclua revisões completas de código antes de mesclar a saída da extensão em ramificações de produção.
- Execute todos os testes e conclua as verificações de controle de qualidade usuais associadas ao seu processo de gerenciamento de alterações, conforme apropriado.
Como faço para modernizar vários aplicativos ao mesmo tempo e como posso dimensionar a experiência de mod de aplicativo para um grande número de aplicativos?
Você pode usar a CLI do AppCAT para verificar vários projetos ao mesmo tempo usando o -bulk sinalizador. No entanto, recomendamos que você modernize apenas um projeto ou aplicativo de cada vez. Você pode criar sua própria tarefa de migração com base em alterações de código de um projeto e aplicá-las a outros projetos, reduzindo o trabalho repetitivo.
Que modelo devo usar?
Como regra geral, os modelos mais recentes superam os modelos anteriores. Para tarefas de codificação, recomendamos modelos Claud Sonnet para melhor precisão. No entanto, para reduzir custos, considere iniciar sua exploração a partir de modelos com um multiplicador menor.
Guia de resolução de problemas
Quais são os limites de tamanho de token dos modelos de topo?
Para obter especificações detalhadas do modelo, consulte a documentação do GitHub Copilot.
Quais são os requisitos operacionais para atualizações de estrutura e tempo de execução Java?
Para garantir atualizações bem-sucedidas do Java Runtime e do framework, as seguintes informações são necessárias:
- O tipo de projeto. O projeto deve ser um projeto Java baseado em Git que possa ser compilado com Maven ou Gradle.
- A versão Java de destino - a versão JDK para a qual você deseja atualizar - por exemplo, Java 21.
- Os caminhos JDK de origem e de destino - os caminhos para os JDKs instalados para as versões atual e de destino.
- A configuração do Maven/Gradle - caminhos para as ferramentas de construção do Maven/Gradle. Para Gradle, apenas wrappers Gradle são suportados.
Como a modernização do aplicativo GitHub Copilot usa o servidor MCP e como posso verificar se há atualizações ou solucionar problemas?
A modernização do aplicativo GitHub Copilot usa o servidor MCP para aprimorar os recursos de transformação de código. Depois de instalar a extensão Visual Studio Code, o servidor MCP é registrado e inicia automaticamente.
Se você notar um botão de atualização especial no canto inferior direito do painel de bate-papo do GitHub Copilot, isso pode indicar que as atualizações da ferramenta estão disponíveis. Selecione o botão para carregar automaticamente as versões mais recentes das ferramentas.
O servidor MCP de modernização do aplicativo GitHub Copilot também mantém logs. Para solucionar problemas, verifique os arquivos de log localizados em: %USERPROFILE%/.ghcp-appmod-java/logs
Por que a modernização do aplicativo GitHub Copilot para depois de listar um plano sem fazer alterações no código?
Às vezes, a modernização do aplicativo GitHub Copilot requer confirmação explícita antes de prosseguir. Você pode digitar sim ou continuar no bate-papo para permitir que o agente avance com as modificações de código.
Por que a modernização do aplicativo GitHub Copilot frequentemente me pede para selecionar **Continuar**?
Para garantir operações mais seguras, o agente do GitHub Copilot pede repetidamente confirmação do utilizador, podendo usar a seguinte configuração como solução alternativa.
Para o Visual Studio Code, podes selecionar a seta suspensa ao lado do botão Continuar e depois selecionar Permitir Sempre, ou atualizar a definição
chat.tools.autoApprovedo Visual Studio Code paratrueaprovar automaticamente todas as ferramentas. Também recomendamos configurarchat.agent.maxRequestspara128reduzir o número de etapas que exigem confirmação para continuar.Para o Intellij IDEA, pode selecionar o botão Continuar , ou atualizar as suas definições, selecionar a janela de configuração do Tools>GitHub Copilot e depois selecionar Auto-aprovar. Recomendamos também ativar as Anotações da Ferramenta Trust MCP e aumentar os Pedidos Máximos para
99.
Quais configurações de rede são necessárias para usar a modernização do aplicativo GitHub Copilot no Visual Studio Code?
Para garantir que a extensão funcione corretamente no Visual Studio Code, a conectividade de rede deve ser estável e permitir o acesso aos serviços do GitHub Copilot. Em ambientes restritos, talvez seja necessário configurar as regras de proxy ou firewall de acordo. Se você encontrar erros como "Language Model Unavailable" na janela de chat, consulte o guia oficial de solução de problemas Gerenciando o acesso do GitHub Copilot à rede da sua empresa.
Há alguma configuração no GitHub Copilot que eu deva configurar para ter certeza de que recebo todos os recursos?
O GitHub Copilot pode bloquear determinadas gerações de código para arquivos que geralmente se assemelham a código público, como pom.xml. Para evitar que o Copilot bloqueie essas alterações, você deve permitir sugestões correspondentes ao código público. Para obter instruções, consulte Ativando ou desativando sugestões correspondentes ao código público.
Para gerenciar as configurações do Copilot do GitHub em sua organização, consulte Habilitando recursos do Copilot em sua organização.
Por que não vejo ferramentas na modernização do aplicativo GitHub Copilot que usam o servidor MCP (Model Context Protocol)?
A modernização do aplicativo GitHub Copilot usa o servidor MCP para fornecer funcionalidades de migração especializadas. Quando você seleciona Atualizar, ele estabelece uma conexão com esse servidor e atualiza as ferramentas disponíveis no agente de chat. Esta ação só é necessária nos seguintes casos:
- Quando você abre um projeto Java para migração pela primeira vez.
- Quando você atualiza a extensão para uma versão mais recente.
Por que o processo de regeneração de código é instável?
A modernização do aplicativo GitHub Copilot é alimentada por IA, portanto, erros ocasionais podem ocorrer. Reveja sempre cuidadosamente a saída antes de a utilizar. Você também pode repetir o processo de regeneração para ver sugestões de código alternativo.
Onde as tarefas são armazenadas na máquina local e como elas podem ser compartilhadas?
As tarefas predefinidas estão no seguinte local: %USERPROFILE%.vscode\extensions\microsoft.migrate-java-to-azure-0.1.0\rag
As tarefas personalizadas estão no seguinte local: %USERPROFILE%.azure\migrate-copilot\custom-rule
Como posso ver mais detalhes sobre as alterações de código feitas pelo agente?
O agente sempre inclui explicações para suas alterações de código na janela de chat. No entanto, esses detalhes podem ser recolhidos na interface do usuário. Você pode expandir a resposta no bate-papo para ver o raciocínio completo e o raciocínio passo a passo.
Posso usar a funcionalidade de modernização da aplicação GitHub Copilot no IntelliJ IDEA numa plataforma Linux?
Atualmente só suportamos plataformas Windows e macOS.