Atualizando versões Java com o Amazon Q Developer - Amazon Q Developer

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Atualizando versões Java com o Amazon Q Developer

O Amazon Q Developer pode atualizar seus aplicativos Java para versões de linguagem mais recentes no ambiente de desenvolvimento integrado (IDE). As alterações que o Amazon Q pode fazer para atualizar seu código incluem a atualização de componentes de código obsoletos e APIs a atualização de bibliotecas, estruturas e outras dependências em seu código.

Para transformar seu código, o Amazon Q primeiro cria seu código na versão do idioma de origem e verifica se ele tem as informações necessárias para realizar a transformação. Depois que o Amazon Q transformar seu código com sucesso, você verifica e aceita as alterações em seu IDE. Como o Amazon Q Developer faz as alterações mínimas necessárias para tornar seu código atualizado compatível com o JDK de destino, é necessária uma transformação adicional para atualizar as bibliotecas e dependências do seu projeto. Para obter mais informações sobre como o Amazon Q transforma seu código, consulteComo o Amazon Q Developer transforma o código para atualizações da linguagem Java.

Atualizações de Java suportadas e IDEs

Atualmente, o Amazon Q oferece suporte às seguintes versões de código-fonte e versões de destino de Java para transformações. A transformação do código para a mesma versão do Java inclui a atualização de bibliotecas e outras dependências na versão do código-fonte.

Atualizações de Java suportadas
Versão do código-fonte Versões de destino suportadas
Java 8 Java 17 e Java 21
Java 11 Java 17 e Java 21
Java 17 Java 17 e Java 21
Java 21

Java21

O Amazon Q oferece suporte a atualizações de Java nas seguintes áreas: IDEs

  • Módulos em JetBrains IDEs

  • Projetos e espaços de trabalho em Visual Studio Code

Etapa 1: pré-requisitos

Antes de continuar, certifique-se de que você concluiu as etapas em Configurar o Amazon Q no IDE.

Antes de começar, certifique-se de que os seguintes pré-requisitos são atendidos:

  • Seu projeto foi escrito em uma Javaversão compatível e é baseado emMaven.

  • Seu projeto foi construído com sucesso Maven em seu IDE. MavenA versão 3.8 ou posterior é atualmente suportada.

  • O JDK de origem do seu projeto está disponível localmente e é a versão do seu código-fonte. Por exemplo, se você estiver transformando o código Java 8, sua instalação local do JDK deverá ser o JDK 8.

  • Seu projeto é construído em 55 minutos ou menos.

  • Seu projeto está configurado corretamente e a versão correta do JDK foi especificada. Para obter mais informações, consulte Etapa 2: configurar o projeto.

  • Seu projeto não exige acesso a recursos em sua rede privada, incluindo uma nuvem privada virtual (VPC) ou uma rede on-premises. Por exemplo, se seu projeto contiver testes de unidade que se conectam a um banco de dados em sua rede, a transformação falhará.

  • Seu projeto não usa plug-ins que empacotam linguagens diferentes de Java em seu projeto Java. Por exemplo, se seu projeto usar o frontend-maven-pluginpara executar código de front-end além JavaScript do código-fonte Java, a transformação falhará.

  • Sua rede local permite uploads para buckets do Amazon S3 que o Amazon Q usa para transformar seu código. Para obter mais informações, consulte Permitir acesso aos buckets do Amazon S3 em perímetros de dados.

Etapa 2: configurar o projeto

Para configurar seu projeto, use as informações a seguir para o IDE que você está usando.

Configurar um projeto no JetBrains

Para configurar seu projeto em JetBrains, talvez seja necessário especificar as seguintes configurações de projeto e módulo.

Se seus módulos usam o mesmo JDK e o mesmo nível de linguagem do seu projeto, você não precisa atualizar as configurações do módulo.

  • SDK do projeto: o JDK usado para compilar seu projeto.

  • Nível de linguagem do projeto: a versão do Java usada em seu projeto.

  • SDK do módulo: o JDK usado para compilar seu módulo.

  • Nível de idioma do módulo: a versão do Java usada em seu módulo.

  • Maven Runner JRE: o JDK com o qual você constrói seu módulo.

Atualizar as configurações do projeto e do módulo

Para atualizar as configurações de SDK e de nível de idioma para o projeto ou módulo, siga as etapas a seguir:

  1. No seu JetBrains IDE, escolha Arquivo e, em seguida, Estrutura do projeto.

  2. A janela Project Structure é aberta. Em Configurações do projeto, escolha Módulos.

    1. Para atualizar o JDK do seu projeto, escolha na lista suspensa ao lado do SDK.

    2. Para atualizar o idioma do seu projeto, escolha no menu suspenso ao lado do nível do idioma.

  3. Em Configurações do projeto, escolha Módulos.

    1. Para atualizar seu módulo JDK, escolha na lista suspensa ao lado do SDK.

    2. Para atualizar o idioma do seu módulo, escolha no menu suspenso ao lado do nível do idioma.

Para obter mais informações, consulte Configurações da estrutura do projeto e Configurações da estrutura do módulo na documentação do JetBrains.

Atualizar as configurações do Maven

Para atualizar o JRE do Maven Runner, siga as etapas a seguir:

  1. No IDE JetBrains, selecione o ícone de engrenagem e, em seguida, escolha Configurações no menu que é exibido.

  2. Na janela Configurações, escolha Construção, Execução, Implantação depois Ferramentas de Construção, depois Maven e depois Executor.

  3. No campo JRE, escolha o JDK usado para criar o módulo que você está transformando.

Configurar um projeto no VS Code

Para configurar seu projeto em VS Code, seu projeto deve conter o seguinte:

  • O arquivo pom.xml na pasta do projeto

  • O arquivo .java no seu diretório de projeto

Se seu projeto contiver um Maven wrapper executável (mvnw para macOS ou mvnw.cmd para Windows), verifique se ele está na raiz do seu projeto. O Amazon Q usará o wrapper e nenhuma outra configuração Maven será necessária.

Se você não estiver usando um Maven wrapper, instale Maven. Para obter mais informações, consulte Instalação do Apache Maven na documentação do Apache Maven.

Depois de instalar Maven, adicione-o à sua PATH variável. Para obter mais informações, consulte Como faço para adicionar o Maven ao meu PATH? Sua runtime variável Java também deve estar apontando para um JDK e não para um JRE. Para confirmar se sua configuração está correta, execute mvn -v. A saída deve mostrar sua Maven versão e a runtime variável apontando para o caminho para seu JDK.

Etapa 3: criar um arquivo de atualização de dependência (opcional)

Você pode fornecer ao Amazon Q um arquivo de atualização de dependência, um arquivo YAML que lista as dependências do seu projeto e as versões para as quais atualizar durante uma transformação. Ao fornecer um arquivo de atualização de dependências, você pode especificar dependências de terceiros e primárias que, de outra forma, o Amazon Q talvez não soubesse atualizar.

As dependências primárias referem-se às bibliotecas, plug-ins e estruturas que sua organização mantém e estão disponíveis somente localmente ou na rede privada da sua organização. O Amazon Q é capaz de acessar suas dependências primárias ao realizar compilações em seu ambiente local. Para obter mais informações, consulte Criando código em seu ambiente local. Dependências de terceiros estão disponíveis publicamente ou de código aberto que não são exclusivas da sua organização.

Você pode especificar dependências primárias que deseja atualizar em um arquivo YAML, e o Amazon Q as atualiza durante a atualização do JDK (por exemplo, Java 8 a 17). Você pode iniciar uma transformação separada (17 a 17 ou 21 a 21) após a atualização inicial do JDK para atualizar dependências de terceiros.

Depois que o Amazon Q realizar uma atualização mínima do JDK, você poderá iniciar uma transformação separada para atualizar todas as dependências de terceiros. Como alternativa, você pode especificar dependências de terceiros e suas versões em um arquivo YAML para atualizar essas dependências somente durante a transformação do upgrade da biblioteca.

O Amazon Q solicitará que você forneça um arquivo de atualização de dependência durante a transformação. Se você quiser fornecer um, primeiro verifique se você configurou o arquivo corretamente. Os campos a seguir são obrigatórios no arquivo YAML:

  • name - O nome do arquivo de atualização da dependência.

  • descrição (opcional) - Uma descrição do arquivo de atualização da dependência e para qual transformação.

  • DependencyManagement - Contém a lista de dependências e plug-ins a serem atualizados.

  • dependências - contém o nome e a versão das bibliotecas a serem atualizadas.

  • plug-ins - Contém os nomes e as versões dos plug-ins a serem atualizados.

  • identificador - O nome da biblioteca, plug-in ou outra dependência.

  • targetVersion - A versão da dependência para a qual fazer o upgrade.

  • versionProperty (opcional) - A versão da dependência que você está definindo, conforme definida com a properties tag no arquivo do seu aplicativo. pom.xml

  • OriginType - Se a dependência é própria ou de terceiros, especificada por FIRST_PARTY ou THIRD_PARTY.

Veja a seguir um exemplo de um arquivo YAML de upgrade de dependência e a configuração necessária para análise do Amazon Q:

name: dependency-upgrade description: "Custom dependency version management for Java migration from JDK 8/11/17 to JDK 17/21" dependencyManagement: dependencies: - identifier: "com.example:library1" targetVersion: "2.1.0" versionProperty: "library1.version" # Optional originType: "FIRST_PARTY" - identifier: "com.example:library2" targetVersion: "3.0.0" originType: "THIRD_PARTY" plugins: - identifier: "com.example.plugin" targetVersion: "1.2.0" versionProperty: "plugin.version" # Optional originType: "THIRD_PARTY"

Etapa 4: transformar seu código

Antes de transformar seu próprio código, talvez você queira testar se seu IDE está configurado corretamente transformando um projeto de amostra. A seguir está um exemplo de GitHub projeto que é elegível para transformação de código: https://github.com/aws-samples/aws-appconfig-java-sample.

Para testar a configuração do seu IDE, baixe e descompacte o projeto de amostra e conclua as etapas a seguir para seu IDE. Se você conseguir visualizar as alterações propostas e o resumo da transformação, estará pronto para transformar seu próprio projeto de código. Se a transformação falhar, o IDE não está configurado corretamente. Para resolver problemas de configuração, revise Etapa 2: configurar o projeto e Solução de problemas.

nota

Não desligue nem feche sua máquina local durante a transformação do código porque a compilação do lado do cliente requer uma conexão de rede estável.

Conclua estas etapas para atualizar a versão da linguagem de código do projeto ou módulo de código.

JetBrains
  1. Abra o módulo no qual você deseja atualizar em JetBrains. Certifique-se de ter construído seu projeto com sucesso no IDE.

  2. Escolha o logotipo do Amazon Q e insira /transform no painel do Amazon chatQ que é aberto.

  3. Um pop-up Transforme seu aplicativo é exibido. Escolha o projeto que você deseja atualizar na lista suspensa e, em seguida, escolha Transformar.

  4. O Amazon Q solicita que você forneça um arquivo de dependência de upgrade. Se você configurou um YAML com as dependências e a versão para a qual fazer o upgrade, adicione seu arquivo. O Amazon Q validará o arquivo para garantir que ele esteja configurado corretamente. Se você receber um erro, revise o formato e os campos obrigatórios descritos emEtapa 3: criar um arquivo de atualização de dependência (opcional).

  5. O Amazon Q inicia a transformação. Você pode ver o progresso na guia Detalhes da transformação.

  6. Depois que a transformação for concluída, você poderá verificar o código atualizado antes de atualizar seu projeto. Para ver o novo código, vá até a guia Detalhes da transformação e escolha Exibir diferença. Na janela Aplicar patch exibida, escolha um arquivo para abrir uma visualização de diferenças com seu código-fonte e o código atualizado.

  7. Para aceitar as alterações feitas pelo Amazon Q, escolha Exibir diferença para abrir a janela Aplicar patch. Selecione todos os arquivos atualizados e escolha OK para atualizar seu projeto no local.

  8. Para obter detalhes sobre como seu código foi atualizado e sugerir as próximas etapas, na guia Detalhes da transformação, escolha Exibir resumo da transformação.

Código do Visual Studio
  1. Abra o projeto ou o espaço de trabalho no VS Code que você deseja atualizar. Certifique-se de que você construiu o projeto com êxito no IDE.

  2. Escolha o logotipo do Amazon Q e insira /transform no painel do Amazon chatQ que é aberto.

  3. Escolha o projeto que você deseja atualizar na barra de pesquisa na parte superior do IDE.

  4. Se o Amazon Q não conseguir encontrar a versão do seu código-fonte, ele solicitará que você escolha a versão do seu código. Escolha a versão em que seu código-fonte está escrito e, em seguida, escolha Transformar no pop-up para continuar.

  5. Caso seja solicitado, insira o caminho JAVA_HOME para o JDK. Para obter mais informações, consulte Configurar seu projeto VS Code.

  6. O Amazon Q solicita que você forneça um arquivo de dependência de upgrade. Se você configurou um YAML com as dependências e a versão para a qual fazer o upgrade, adicione seu arquivo. O Amazon Q validará o arquivo para garantir que ele esteja configurado corretamente. Se você receber um erro, revise o formato e os campos obrigatórios descritos emEtapa 3: criar um arquivo de atualização de dependência (opcional).

  7. O Amazon Q inicia a transformação. Você pode ver o progresso na guia Hub de transformação.

  8. Depois que a transformação for concluída, a guia Alterações propostas será aberta. Para verificar o código atualizado antes de atualizar seu projeto, escolha Baixar as alterações propostas. Escolha um arquivo para abrir uma visualização de diferenças com seu código-fonte e código atualizado.

  9. Para aceitar as alterações feitas pela Amazon Q, acesse a guia Alterações propostas e escolha Aceitar.

  10. Para obter detalhes sobre como seu código foi atualizado e ver as próximas etapas sugeridas, no Transformation Hub, escolha o botão de reticências Visualizações e Mais Ações e, em seguida, escolha Mostrar resumo da transformação.