Solução de problemas com transformações Java - 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á.

Solução de problemas com transformações Java

As informações a seguir podem ajudá-lo a solucionar problemas comuns ao transformar aplicativos Java com o Amazon Q Developer.

Por que o Amazon Q não consegue fazer o upload do meu projeto?

Se o upload do projeto falhar, é provável que seja por um dos problemas a seguir. Veja o tópico que corresponde ao erro que você vê no Amazon Q.

Reduzir o tamanho do projeto

Para transformar seu código, o Amazon Q gera um artefato de projeto, que inclui seu código-fonte, dependências do projeto e logs de construção. O tamanho máximo do artefato do projeto para uma tarefa de transformação é de 2 GB. Se você receber um erro relacionado ao tamanho do artefato do projeto, deverá diminuir o tamanho do seu projeto ou tentar transformar um projeto menor. Você pode visualizar o tamanho do arquivo de artefato do seu projeto nos logs de transformação de código. Para ter mais informações, consulte Como faço para acessar os logs de transformação de código?

Defina as configurações de proxy em seu IDE

Para transformar seu código, o Amazon Q carrega o artefato do seu projeto em um bucket Amazon S3 de propriedade do serviço. Parte do processo de upload envolve o uso de SSL nossos TLS certificados para estabelecer comunicação entre o Amazon S3 e seu. IDE Se você estiver usando um servidor proxy, os TLS certificados SSL ou certificados usados pelo seu servidor proxy devem ser confiáveis, caso contrário, a Amazon Q não poderá fazer o upload do seu projeto.

Se você receber um erro relacionado ao seu proxy ou certificados, provavelmente precisará configurar seu sistema operacional IDE ou seu sistema operacional para confiar em seus certificados ou atualizar outras configurações de proxy.

nota

Você também pode encontrar problemas não relacionados aos certificados se estiver protegido pelo servidor proxy ou firewall da sua organização. Se você concluir os procedimentos a seguir para configurar seus certificados e ainda tiver problemas, entre em contato com o administrador da rede para garantir que você tenha permissão para se comunicar com o Amazon S3 a partir do seu. IDE Para obter mais informações, consulte Permitir acesso ao Amazon S3.

Configurar certificados em JetBrains

Para configurar seu JetBrains IDEJava Runtime Environment (JRE) para confiar nos TLS certificados SSL ou usados pelo seu servidor proxy, você deve importar os TLS certificados SSL ou para o cacerts arquivo noJRE. O cacerts arquivo contém certificados raiz confiáveis para conexões seguras, como HTTPS eSSL, e faz parte das configurações de segurança JRE do. Para importar um certificado, realize o procedimento a seguir.

nota

Recomendamos fazer um backup do cacerts arquivo antes de modificá-lo, pois qualquer erro pode causar problemas com conexões seguras.

  1. Determine o caminho para o cacerts arquivo no seuJRE. O caminho do cacerts arquivo interno JRE enviado com seu JetBrains IDEdepende do sistema operacional e da versão do JetBrains IDEvocê está usando.

    Veja a seguir exemplos de caminhos para o cacerts arquivo em sistemas operacionais comuns. Escolha seu sistema operacional para ver exemplos.

    nota

    <JetBrains Installation Folder>refere-se ao diretório onde JetBrains os produtos estão instalados. Esse diretório geralmente é escolhido durante o processo de instalação.

    A jbr pasta representa o JRE pacote com JetBrains IDEs, que é uma versão específica do JRE personalizado para uso com JetBrains IDEs.

    Windows

    O caminho cacerts do arquivo para um JetBrains IDEinstalado no Windows é:

    <JetBrains Installation Folder>\jbr\bin\cacerts

    Por exemplo, se você instalou um JetBrains IDEno Windows no local padrão, o caminho pode ser:

    C:\Program Files\JetBrains\jbr\bin\cacerts
    macOS

    O caminho cacerts do arquivo para um JetBrains IDEinstalado no macOS é:

    /Applications/JetBrains Toolbox/<version>/JetBrains Toolbox.app/Contents/jbr/Contents/Home/lib/security/cacerts

    Por exemplo, se você instalou um JetBrains IDEno macOS no local padrão, o caminho pode ser:

    /Applications/JetBrains Toolbox/2022.3.4/JetBrains Toolbox.app/Contents/jbr/Contents/Home/lib/security/cacerts
    Linux

    O caminho cacerts do arquivo para um JetBrains IDEinstalado no Linux é:

    /opt/jetbrains/jbr/lib/security/cacerts
  2. Determine o certificado que você precisa importar para o cacerts arquivo. O arquivo de certificado geralmente tem uma extensão de arquivo .cer, .crt ou .der. Se você não tiver certeza de quais certificados precisa adicionar, entre em contato com o administrador da rede.

  3. Importe o certificado assinado para o cacerts keystore. Isto pode ser feito com o Comando keytool do Java.

    1. Abra um prompt de comando e execute o comando a seguir:

      keytool -import -alias <alias> -file <certificate_file> -keystore <path_to_cacerts>
    2. Para <alias>, você pode adicionar um nome para o certificado que está importando para consultá-lo posteriormente. Esta opção é opcional.

    3. Para <certificate_file>, especifique o caminho para o certificado que você está importando. Esse deve ser um caminho para os arquivos .cer, .crt ou .der contendo o certificado.

    4. Para <path_to_cacerts>, especifique o caminho para o arquivo cacerts keystore que você salvou na etapa 1. Esse é o arquivo para o qual você está importando o certificado.

    Por exemplo, se você quiser importar um certificado nomeado my_certificate.cer para o cacerts repositório de chaves do pacote JRE IntelliJ IDEA no Windows, e você quiser dar o alias myalias ao certificado, o comando pode ser:

    keytool -import -alias myalias -file my_certificate.cer -keystore "C:\Program Files\JetBrains\IntelliJ IDEA 2022.3.2\jbr\bin\cacerts"
  4. Durante o processo de importação, você será solicitado a inserir a senha do keystore. A senha padrão para o cacerts keystore échangeit.

  5. Depois de executar o comando, você deverá confiar no certificado. Para confirmar se o certificado é confiável e concluir a importação, insira yes.

  6. Talvez você também precise adicionar os certificados ao IDE próprio, além doJRE. Para obter mais informações, consulte Certificados de servidor no JetBrains documentação.

Configurar certificados em Visual Studio Code

Para configurar Visual Studio Code para confiar nos TLS certificados SSL ou usados pelo seu servidor proxy, verifique se você definiu as seguintes configurações de proxy para seu sistema operacional.

Defina as seguintes configurações de proxy para Visual Studio Code no macOS.

Adicione certificados ao seu chaveiro do macOS

Se ainda não o fez, você deve adicionar os certificados usados pelo seu servidor proxy ao seu macOS chaveiro. Para obter informações sobre como adicionar certificados ao seu chaveiro, consulte Adicionar certificados a um chaveiro usando o Keychain Access no Mac no Guia do usuário do Keychain Access.

Instale a VSCode extensão Mac CA

A VSCodeextensão Mac CA permite que o Amazon Q acesse os certificados que você adicionou ao Keychain Access no seu Mac.

Como instalar a extensão:

  1. Pesquise mac-ca-vscode no VS Code painel de extensões e escolha Instalar.

  2. Restart (Reiniciar) VS Code.

Atualize as configurações de proxy em VS Code No macOS

Atualize as configurações a seguir para garantir que VS Code está configurado corretamente para seu proxy.

  1. Abra as configurações em VS Code.

  2. Insira proxy na barra de pesquisa.

  3. No campo Http: Proxy, adicione seu proxyURL.

  4. Desmarque Http: Proxy Strict SSL.

  5. Na lista suspensa Http: Proxy Support, escolha Ativar.

  6. Na barra de pesquisa, insira http.experimental.systemCertificatesV2. Selecione Http › Experimental: Certificados do sistema V2.

Defina as seguintes configurações de proxy para Visual Studio Code no Windows.

Adicionar certificado como certificado raiz confiável no Windows

Se ainda não o fez, você deve adicionar os certificados usados pelo seu servidor proxy à sua loja de Autoridades de Certificação Raiz Confiáveis no Windows. Para adicionar um certificado, realize o procedimento a seguir:

  1. Abra a ferramenta de pesquisa ou uma janela de comando Executar.

  2. Digite o seguinte comando para abrir a ferramenta CA:

    certmgr.msc
  3. Escolha a loja Autoridades de Certificação Raiz Confiáveis.

  4. Clique com o botão direito do mouse em Certificados e escolha Todas as tarefas, Importar.

  5. Siga as instruções fornecidas para importar seu certificado de proxy.

  6. Depois de importar seu certificado, confirme se o certificado foi adicionado.

    Na loja Autoridades de certificação raiz confiáveis, clique duas vezes em Certificados. Clique com o botão direito do mouse no certificado que você adicionou e escolha Propriedades. Em Objetivos do certificado, a opção Habilitar todas as finalidades para este certificado deve ser selecionada.

Instale a extensão Win-CA VSCode

A VSCodeextensão Win-CA permite que a Amazon Q acesse os certificados que você adicionou aos certificados raiz confiáveis no Windows.

Como instalar a extensão:

  1. Pesquise win-ca no VS Code painel de configurações.

  2. Na lista suspensa Injetar, escolha acrescentar.

Atualize as configurações de proxy em VS Code no Windows

Atualize as configurações a seguir para garantir que VS Code está configurado corretamente para seu proxy.

  1. Abra as configurações em VS Code.

  2. Insira proxy na barra de pesquisa.

  3. No campo Http: Proxy, adicione seu proxyURL.

  4. Desmarque Http: Proxy Strict SSL.

  5. Na lista suspensa Http: Proxy Support, escolha Ativar.

  6. Na barra de pesquisa, insira http.experimental.systemCertificatesV2. Selecione Http › Experimental: Certificados do sistema V2.

  7. Restart (Reiniciar) VS Code.

Permitir acesso ao Amazon S3

Durante uma transformação, o Amazon Q carrega seu código em um bucket Amazon S3 de propriedade do serviço. Se sua rede ou organização não tiver configurado o acesso ao Amazon S3, o Amazon Q não poderá carregar seu projeto.

Para garantir que o Amazon Q possa carregar seu projeto, certifique-se de que sua configuração de proxy e outros componentes de rede, como políticas de prevenção de perda de dados (DLP), estejam configurados para permitir o acesso ao Amazon S3. Talvez também seja necessário incluir na lista de permissões o bucket do Amazon S3 onde o Amazon Q faz upload o projeto. Para obter mais informações, consulte Perímetros de dados para recursos do Amazon Q.

Se você transformar um grande projeto, DLP políticas ou outros componentes de rede podem causar atrasos e impedir um upload bem-sucedido se não estiverem configurados para permitir o bucket do Amazon S3. Se você optar por não colocar o bucket na lista de permissões, talvez seja necessário transformar um projeto menor para que o Amazon Q possa carregá-lo.

Por que são meus Maven comandos falhando?

A seguir estão Maven problemas de configuração que você pode ver no JetBrains and Visual Studio Code IDEs. Se você resolver os problemas e ainda ver Maven erros, pode haver um problema com seu projeto. Use as informações nos logs de erros para resolver quaisquer problemas com seu projeto e tente transformá-lo novamente.

Atualizar Maven configuração em JetBrains

Se uma transformação falhar em JetBrains devido a Maven problemas de comando, os registros de erros aparecem na guia Executar. Use as informações nos logs para tratar o problema. A seguir estão alguns problemas que talvez você precise resolver:

  • Certifique-se de que seu Maven home path está definido como Empacotado. Na caixa de diálogo Configurações, expanda a seção Construção, Execução, Implantação. Expanda a seção Ferramentas de construção e, em seguida, expanda Maven. Na lista suspensa do caminho inicial do Maven, escolha Empacotado.

  • Certifique-se de que o Java runtime environment (JRE) está usando seu projetoJDK. Na caixa de diálogo Configurações, expanda a seção Construção, Execução, Implantação. Expandir Mavene escolha Runner. Na lista JREsuspensa, escolha Usar projeto. JDK

  • Certifique-se de que Maven está habilitado. Vá para Configurações e escolha Plugins. Pesquisar por Maven e escolha o Maven plugin. Se você ver um botão Ativar, escolha-o para ativar Maven.

Atualizar Maven configuração em Visual Studio Code

Se uma transformação falhar em VS Code por causa de Maven problemas de comando, um arquivo de texto que contém os registros de erros é aberto em uma nova guia. Use as informações nos logs para tratar o problema.

Certifique-se de que você configurou uma das opções a seguir:

  • Seu projeto contém um Maven wrapper na pasta raiz do projeto

  • Uma versão do Maven suportado pelo Amazon Q está disponível em seu PATH

Para ter mais informações, consulte Como faço para adicionar o Maven ao meu PATH?

Como faço para adicionar o Maven ao meu PATH?

Para transformar seu código em VS Code sem usar um Maven invólucro, você deve instalar Maven e adicione-o à sua PATH variável.

Para verificar se você tem Maven já instalado corretamente, execute mvn -v em um novo terminal de sistema operacional fora do Visual Studio Code. Você deve ver uma saída com seu Maven versão.

Se você receber uma saída em seu Visual Studio Code terminal, mas não no terminal do sistema operacional, ou se o comando não for encontrado, você precisará adicionar Maven para o seuPATH.

Para adicionar Maven para o seuPATH, siga as instruções da sua máquina.

macOS

Para adicionar Maven para o seu macOSPATH, conclua as etapas a seguir.

  1. Localize seu Maven diretório de instalação ou a pasta em que você instalou Mavene salve o caminho para essa pasta.

  2. Abra o arquivo de configuração do shell com seu editor de preferência. Para versões recentes do macOS, o shell padrão é zsh e o arquivo de configuração padrão está localizado em ~/.zshrc.

    Adicione a seguinte linha ao arquivo de configuração. Defina o valor do M2_HOME caminho que você salvou na etapa 1:

    export M2_HOME="your Maven installation directory" export PATH="${M2_HOME}/bin:${PATH}"

    Esses comandos tornam o mvn comando disponível em todos os terminais.

  3. Feche todas as janelas do terminal do sistema operacional e saia de todas Visual Studio Code instâncias.

  4. Para verificar isso Maven foi adicionado ao seuPATH, abra um novo terminal de sistema operacional e execute o seguinte comando:

    mvn -v

    Você deve ver uma saída com seu Maven versão.

  5. Depois de ver o seu Maven saída, reinicie Visual Studio Code. Talvez você também precise reiniciar sua máquina. Abra um novo Visual Studio Code terminal e execute o seguinte comando:

    mvn -v

    A saída deve ser idêntica à saída na etapa 4. Se o Visual Studio Code a saída é diferente, tente o seguinte para garantir que sua configuração esteja correta:

    • Verifique sua PATH variável em Visual Studio Code. Uma IDE extensão pode estar alterando o de PATH forma que seja diferente da sua PATH variável local. Desinstale a extensão para removê-la do seu PATH.

    • Verifique seu shell padrão em Visual Studio Code. Se estiver configurado para algo diferente dezsh, repita essas etapas para seu shell.

Windows

Para adicionar Maven para o seu Windows PATH, conclua as seguintes etapas:

  1. Localize seu Maven diretório de instalação ou a pasta em que você instalou Mavene salve o caminho para essa pasta.

  2. Abra a janela Variáveis de ambiente:

    1. Selecione o Windows botão para abrir a barra de pesquisa.

    2. Insira Edit environment variables for your account e o selecione.

  3. Na janela Variáveis de ambiente, procure a variável Path. Se você já tiver uma variável Path, escolha Editar... para atualizá-lo. Se você não vê uma variável Path, escolha Novo... para adicionar um.

  4. Na janela Editar variável de ambiente exibida, clique duas vezes no caminho existente para editá-lo ou escolha Novo para adicionar uma nova entrada de caminho.

    Substitua o existente Maven entrada de caminho com o caminho que você salvou na etapa 1 ou adicione o caminho como uma nova entrada. No final do caminho, adicione \bin como sufixo, como no exemplo a seguir:

    C:\Users\yourusername\Downloads\apache-maven-3.9.6-bin\apache-maven-3.9.6\bin
  5. Escolha OK para salvar a entrada do caminho e, em seguida, escolha OK novamente na janela Variáveis de ambiente.

  6. Abra um novo prompt de comando e execute o comando a seguir:

    mvn -v

    Você deve ver uma saída com seu Maven versão.

Por que o Amazon Q não consegue criar meu código?

Se a transformação falhar quando o Amazon Q estiver criando seu código, seu projeto pode não estar configurado adequadamente para o ambiente em que o Amazon Q cria seu código. Talvez seja necessário atualizar a configuração de compilação ou a implementação do código.

Analise a saída do log de compilação que o Amazon Q fornece para determinar se há alterações que você pode fazer no seu projeto. A seguir estão alguns problemas comuns que podem impedir o Amazon Q de criar seu código.

Remova caminhos absolutos em pom.xml

Se você tiver um caminho absoluto em seu arquivo pom.xml, a Amazon Q não conseguirá encontrar os arquivos relevantes e, como resultado, talvez não consiga criar seu código.

A seguir está um exemplo de um caminho absoluto que você poderia ter em seu pom.xml arquivo:

<toolspath> <path>/Library/Java/JavaVirtualMachines/jdk-11.0.11.jdk/Contents/Home/lib/tools.jar</path> </toolspath>

Em vez de usar um caminho absoluto, você pode criar um caminho relativo usando um ponteiro. Veja a seguir um exemplo de como você pode substituir o caminho absoluto anterior por um caminho relativo:

<toolspath> <path>${java.home}/../lib/tools.jar</path> </toolspath>

Remova bancos de dados locais ou externos em testes de unidade

O Amazon Q executa qualquer teste de unidade em seu projeto ao criar seu código. Se um teste unitário chamar um banco de dados local ou externo, o Amazon Q não terá acesso ao banco de dados, fazendo com que a compilação falhe. Para evitar que a compilação falhe, você deve remover a chamada do banco de dados do teste de unidade ou remover o teste de unidade antes de enviar a transformação.

Por que minha transformação falhou após 55 minutos?

Se seu trabalho de transformação de código falhar após 55 minutos, o tempo de criação do código provavelmente excederá o limite de tempo de compilação. Atualmente, há um limite de tempo de 55 minutos para criar seu código.

Se o tempo de compilação local demorar 55 minutos ou mais, reduza o tempo de compilação do seu projeto para transformar seu código. Se sua compilação local for mais rápida do que a compilação com a transformação de código, verifique se há tarefas que possam estar falhando ou demorando mais em um ambiente diferente. Considere desativar casos de teste de longa duração. Considere também usar tempos limite para tentativas de acessar recursos que podem não estar disponíveis no IDE ambiente seguro ou na Internet.

Por que não consigo baixar meu código transformado?

Se você não conseguir baixar o código após a conclusão da transformação, é provável que seja por um dos problemas a seguir. Veja o tópico que corresponde ao erro que você vê no Amazon Q.

Reduzir o tamanho do projeto

Depois que a transformação for concluída, o Amazon Q gera um artefato de saída que contém uma diferença com seu código atualizado e um resumo da transformação com informações sobre as alterações feitas. O artefato de saída deve ter 1 GB ou menos para que o possa IDE ser baixado.

Se o artefato de saída exceder o limite, não será possível baixar o código atualizado ou o resumo da transformação. Tente transformar um projeto menor para evitar um grande artefato de saída. Se o problema persistir, entre em contato com Support. Para obter informações sobre como entrar em contato Support com a Amazon Q, consulteUsando o Amazon Q Developer para conversar com Support.

Download do código diff em 24 horas

O arquivo de comparação de código com seu código atualizado só estará disponível por 24 horas após a conclusão da transformação. Se já passaram mais de 24 horas desde a conclusão da transformação, reinicie a transformação para baixar o arquivo diff.

Defina as configurações de proxy em seu IDE

O Amazon Q baixa seu código atualizado de um bucket Amazon S3 de propriedade do serviço. Parte do processo de download envolve o uso de SSL nossos TLS certificados para estabelecer comunicação entre o Amazon S3 e seu. IDE Se você estiver usando um servidor proxy, os TLS certificados SSL ou certificados usados pelo seu servidor proxy devem ser confiáveis, caso contrário, a Amazon Q não poderá fazer o upload do seu projeto.

Para baixar seu código, talvez seja necessário configurar seus IDE certificados confiáveis ou atualizar outras configurações de proxy. Para obter mais informações sobre como atualizar as configurações de proxy, consulte Defina as configurações de proxy em seu IDE.

Remover caracteres curinga em JetBrains configurações de proxy

Se você tiver definido as configurações de proxy em seu JetBrains IDE, você pode ver o seguinte erro ao baixar seu código atualizado:

software.amazon.awssdk.core.exception.SdkClientException: Unable to execute HTTP request: Dangling meta character '*' near index 0

Isso provavelmente é causado pela presença de um caractere curinga (*) no campo Sem proxy for das suas configurações IDE de proxy. O Java SDK usado pelo Amazon Q não oferece suporte a entradas curinga nesse campo.

Para baixar seu código, remova todos os curingas do campo Sem proxy para e reinicie seuIDE. Se você precisar especificar hosts que devem ignorar o proxy, use uma expressão regular em vez de um caractere curinga. Para atualizar as configurações de proxy em seu JetBrains IDE, consulte HTTPProxy no JetBrains documentação.

Como faço para acessar os logs de transformação de código?

Logins de acesso JetBrains

Para obter informações sobre como acessar JetBrains arquivos de log, consulte Localização de arquivos de IDE log no JetBrains documentação.

Para encontrar registros emitidos pelo Amazon Q em JetBrains, pesquise nos IDE registros a seguinte sequência de caracteres:

software.aws.toolkits.jetbrains.services.codemodernizer

Os logs de transformação de código começam com a string anterior. Registros gerados por Maven são exibidos na guia Executar e têm a string anterior antes e depois da entrada do registro.

Logins de acesso Visual Studio Code

Para encontrar registros emitidos pelo Amazon Q em VS Code, conclua as seguintes etapas:

  1. Escolha Exibir na barra de navegação superior e, em seguida, escolha Paleta de comandos.

  2. Pesquise Amazon Q: View Logs na paleta de comandos que aparece.

  3. Os registros se abrem noIDE. Para pesquisar os arquivos de log CodeTransformation, use CMD + F ou Control + F.

Logins de transformação de código VS Code são prefixados comCodeTransformation:. A seguir está um exemplo de um registro gerado em VS Code para um Maven erro de cópia de dependências:

2024-02-12 11:29:16 [ERROR]: CodeTransformation: Error in running Maven copy-dependencies command mvn = /bin/sh: mvn: command not found

Como faço para encontrar o ID do trabalho de transformação?

Encontre seu ID de emprego em JetBrains

Para encontrar um ID de trabalho de transformação em JetBrains, vá até a guia Detalhes da transformação no Transformation Hub e escolha o ícone Show Job Status (relógio).

Encontre seu ID de emprego em Visual Studio Code

Para encontrar um ID de trabalho de transformação no VS Code, acesse o Transformation Hub e escolha o ícone Mostrar status do trabalho (relógio).