Compartilhar via


Personalizar o plano de atualização do projeto Java ao usar a modernização do aplicativo GitHub Copilot

Este artigo descreve como personalizar o plano de atualização do projeto Java gerado pela modernização do aplicativo GitHub Copilot.

Quando você inicia uma sessão de atualização, o GitHub Copilot gera um arquivo plan.md que descreve as etapas e as tarefas necessárias para a atualização. Esse arquivo serve como um blueprint para o processo de atualização, que você pode personalizar para atender melhor às necessidades do projeto.

Depois que a ferramenta gera o arquivo plan.md , ele é aberto automaticamente no editor do Visual Studio Code. Neste estágio, você pode examinar e personalizar o plano para garantir que ele se alinhe às suas metas de atualização específicas.

Estrutura do arquivo de exemplo plan.md

As seções a seguir descrevem um exemplo plan.md estrutura de arquivos para ilustrar os pontos de personalização.

Parâmetros chave

As seções a seguir descrevem os principais parâmetros no plano que você pode modificar.

Opção de comando da ferramenta de compilação

Essa opção está localizada em Informações do Projeto e permite que você defina parâmetros de linha de comando personalizados para a execução da ferramenta de build. Para obter opções válidas, consulte a documentação da CLI do Maven ou da CLI do Gradle , dependendo do seu projeto.

Exemplos:

  • Para Maven: Build tool command options: -Dmaven.javadoc.skip=true -s "/path/to/custom/settings.xml"

  • Para Gradle: Build tool command options: --info -Penv=production

Observação

Substitua o caminho pelo local real do arquivo settings conforme necessário. Esse caminho mostrado é apenas um exemplo.

Captura de tela do Visual Studio Code que mostra um plano de atualização de exemplo com destinos de atualização realçados.

Validação de teste

Localizado na seção Tarefas Adicionais , você pode habilitar ou desabilitar a execução do teste modificando o run tests before and after the upgrade sinalizador.

  • Defina para true habilitar testes de unidade antes e depois da atualização.
  • Defina false para pular a validação de teste.

Essa configuração controla se a ferramenta executa testes de unidade para verificar a correção funcional durante a atualização.

Ajustando essas configurações, você pode ajustar o processo de atualização para atender melhor aos requisitos do projeto.

Personalizar metas de atualização e fornecer diretrizes

Em cenários de atualização do Java, geralmente você precisa de personalização além do JDK padrão ou atualizações de estrutura – por exemplo, para aplicar alterações de código específicas do projeto ou atualizar bibliotecas internas que a ferramenta não detecta automaticamente. Para dar suporte a essas necessidades, a modernização do aplicativo GitHub Copilot agora permite a personalização dentro do plano de atualização. Essa funcionalidade permite que você forneça suas próprias receitas, instruções e entradas para orientar o processo de atualização. Você pode executar essa personalização modificando as seções Metas e Diretrizes de Atualização.

A seção Metas de Atualização

Na seção Metas de Atualização , agora você pode especificar mais destinos de atualização junto com os objetivos no prompt inicial. Por exemplo, se a tarefa principal for atualizar o projeto do Java 17 para o Java 21, mas o projeto também exigir a atualização do Log4j de 1.x para 2.x, você poderá listar isso como uma meta adicional, conforme mostrado no seguinte prompt de exemplo:

## Upgrade Goals
- Upgrade from Java 17 to 21
- Upgrade org.apache.logging.log4j:* to 2.24.3 
- Upgrade org.internal.lib to 2.0

A seção Diretrizes

A seção Diretrizes define como o Copilot deve executar a atualização. Embora a seção Metas de Atualização se concentre no que precisa ser atualizado, a seção Diretrizes captura a metodologia, as convenções, as ferramentas e as regras que orientam o comportamento do Copilot durante a transformação de código.

Você pode incluir instruções que ajudem a orientar como o Copilot modifica o código, como as seguintes instruções:

  • Diretrizes sobre quais ferramentas, receitas ou estruturas usar para alterações de código.
  • Restrições ou proibições em determinadas abordagens de atualização.
  • Requisitos de estilo de código ou convenção.
  • Links para arquivos internos, documentação ou scripts que o agente pode acessar.
  • Conhecimento de domínio útil para corrigir erros ou executar atualizações.
  • Requisitos de como o agente deve anotar ou comentar as alterações de código.
  • Instruções de limpeza para artefatos temporários criados durante o processo de atualização.

O conteúdo desta seção pode ser texto sem formatação, hiperlinks ou referências a arquivos locais, desde que o Copilot possa acessá-los.

Exemplos:

## Guidelines
- Do not use Log4j 1 to Log4J 2 API bridge to upgrade to Log4J 2. 
- Please follow the code conventions defined in /xxx/bbb/rules.txt.
- Please provide detailed comments explaining why each code change is necessary.
- "com.example:internal-lib:2.0.0" is compatible with Java 21.
- Use our internal MCP tool get_internal_lib_knowledge to retrieve compatibility information for internal libraries.
- After the upgrade, please remove any temporary files created during the process, such as code modification scripts.

Captura de tela do plano de atualização do Java que contém as seções Metas e Diretrizes de Atualização.

Consulte também

Modernização do aplicativo GitHub Copilot