Partilhar via


FAQ sobre modernização do GitHub Copilot

Responde a perguntas frequentes sobre a modernização do GitHub Copilot.

FAQ

Qual é o escopo do produto na modernização do 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 informações sobre as principais capacidades do produto, consulte a visão geral da modernização do GitHub Copilot.

Será que a modernização do GitHub Copilot será open source no futuro?

Atualmente, não temos planos para modernizar o GitHub Copilot em código aberto.

Que plano de licença GitHub Copilot preciso para usar a modernização do GitHub Copilot?

A modernização do GitHub Copilot está disponível para qualquer plano do GitHub Copilot.

Como é faturada a modernização do GitHub Copilot?

A modernização do GitHub Copilot é uma funcionalidade do GitHub Copilot e partilha o mesmo modelo de faturação por subscrição do GitHub Copilot. As tarefas de modernização do GitHub Copilot consomem pedidos premium, com cada plano de subscrição a oferecer uma concessão mensal de pedidos 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 algum plano para a modernização do GitHub Copilot ir além do Java?

Atualmente, a modernização do GitHub Copilot está focada em apoiar aplicações 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 GitHub Copilot armazena o meu código-fonte?

No. A modernização do GitHub Copilot usa o GitHub Copilot da mesma forma que o usas para modificar código, que não retém excertos de código para além da sessão imediata. Também não recolhemos, transmitimos nem armazenamos as suas competências 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 aplicações usou para avaliar a modernização do GitHub Copilot?

Testámos a modernização do GitHub Copilot em centenas de repositórios open-source para garantir que a compilação, coerência e testes de unidades seriam aprovados 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 que frameworks está otimizada a modernização do GitHub Copilot em cenários de atualização?

Embora a modernização do GitHub Copilot se foque na atualização dos runtimes Java, também otimiza as atualizações para os seguintes frameworks:

  • Spring Boot até a versão 3.5.
  • Java EE - Javax para Jakarta EE, até Jakarta 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 integrar o resultado da extensão em branches 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.

Como posso alterar o modelo usado pelo agente personalizado AppModernization?

No Visual Studio Code, a modernização do GitHub Copilot utiliza o AppModernization agente personalizado com Claude Sonnet 4.5 por padrão para melhores resultados ao atualizar código Java para migrar para o Azure. Volta ao modelo 'automático' se o Sonet 4.5 não estiver disponível para ti. Pode configurar o agente personalizado para modificar a definição 'model' selecionando Configurar Agentes Personalizados no menu Agente . Alternativamente, pode usar o seletor de modelos de linguagem na janela de chat para mudar de modelo para a sessão de chat atual.

Captura de ecrã do painel de chat do GitHub Copilot no Visual Studio Code que mostra a opção Configurar Agentes Personalizados.

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 de origem e de destino do JDK - os caminhos para os JDKs instalados nas versões atual e de destino.
  • A configuração do Maven/Gradle - caminhos para as ferramentas de construção do Maven/Gradle. Apenas os wrappers do Gradle são suportados.

Como é que a modernização do GitHub Copilot utiliza o servidor MCP e como posso verificar atualizações ou resolver problemas?

A modernização do GitHub Copilot utiliza o servidor MCP para melhorar as capacidades 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 GitHub Copilot também mantém registos. Para solucionar problemas, verifique os arquivos de log localizados em: %USERPROFILE%/.ghcp-appmod-java/logs

Por que é que a modernização do GitHub Copilot cessa após listar um plano sem efetuar quaisquer alterações ao código?

Por vezes, a modernização do GitHub Copilot requer confirmação explícita antes de avançar. Você pode digitar sim ou continuar no bate-papo para permitir que o agente avance com as modificações de código.

Captura de tela do painel de bate-papo do GitHub Copilot no Visual Studio Code, mostrando o utilizador a digitar

Porque é que a modernização do GitHub Copilot me pede frequentemente 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.autoApprove do Visual Studio Code para true aprovar automaticamente todas as ferramentas. Também recomendamos configurar chat.agent.maxRequests para 128 reduzir o número de etapas que exigem confirmação para continuar.

    Captura de ecrã do painel de bate-papo do GitHub Copilot que mostra o botão Continuar e o menu suspenso com as opções Permitir.

  • 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.

    Captura de ecrã do painel de chat do GitHub Copilot que mostra o botão Continuar no Intellij IDEA.

Que configurações de rede são necessárias para usar a modernização do 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 e/ou firewall conforme necessário. 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.

Porque é que não vejo ferramentas na modernização do GitHub Copilot que usem o servidor Model Context Protocol (MCP)?

A modernização do GitHub Copilot utiliza o servidor MCP para fornecer funcionalidades especializadas de migração. 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 GitHub Copilot é alimentada por IA, pelo que podem ocorrer erros ocasionais. 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 estão as competências armazenadas na máquina local e como podem ser partilhadas?

As tarefas predefinidas estão no seguinte local: %USERPROFILE%.vscode\extensions\microsoft.migrate-java-to-azure-0.1.0\rag

As competências personalizadas estão armazenadas no .github/skills/ diretório dentro do seu projeto. As tarefas personalizadas antigas são automaticamente migradas a partir dos dados de utilizador do VS Code na primeira vez que são carregadas.

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 chat para ver o raciocínio completo e o passo a passo das etapas.

Posso usar a funcionalidade de modernização do GitHub Copilot no IntelliJ IDEA numa plataforma Linux?

Atualmente só suportamos plataformas Windows e macOS.