Risoluzione dei problemi relativi alle trasformazioni Java - Amazon Q Developer

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Risoluzione dei problemi relativi alle trasformazioni Java

Le seguenti informazioni possono aiutarti a risolvere i problemi più comuni durante la trasformazione di applicazioni Java con Amazon Q Developer.

Perché Amazon Q non può caricare il mio progetto?

Se il caricamento del progetto non riesce, probabilmente è dovuto a uno dei seguenti problemi. Consulta l'argomento corrispondente all'errore visualizzato in Amazon Q.

Riduci le dimensioni del progetto

Per trasformare il codice, Amazon Q genera un elemento del progetto, che include il codice sorgente, le dipendenze del progetto e i log di compilazione. La dimensione massima degli artefatti del progetto per un processo di trasformazione è di 2 GB. Se viene visualizzato un errore relativo alla dimensione degli artefatti del progetto, è necessario ridurre le dimensioni del progetto o provare a trasformare un progetto più piccolo. È possibile visualizzare la dimensione del file degli artefatti del progetto nei registri di trasformazione del codice. Per ulteriori informazioni, consulta Come posso accedere ai log di trasformazione del codice?

Configura le impostazioni del proxy nel tuo IDE

Per trasformare il codice, Amazon Q carica l'elemento del progetto in un bucket Amazon S3 di proprietà del servizio. Parte del processo di caricamento prevede l'utilizzo TLS dei SSL nostri certificati per stabilire la comunicazione tra Amazon S3 e il tuo. IDE Se utilizzi un server proxy, i SSL TLS certificati utilizzati dal server proxy devono essere considerati affidabili, altrimenti Amazon Q non sarà in grado di caricare il tuo progetto.

Se ricevi un errore relativo al proxy o ai certificati, probabilmente dovrai configurare il tuo sistema operativo in modo che IDE consideri attendibili i certificati o aggiornare altre impostazioni del proxy.

Nota

Potresti inoltre riscontrare problemi non correlati ai certificati se utilizzi il server proxy o il firewall della tua organizzazione. Se completi le seguenti procedure per configurare i tuoi certificati e hai ancora problemi, contatta l'amministratore di rete per assicurarti di poter comunicare con Amazon S3 dal tuo. IDE Per ulteriori informazioni, consulta Consenti l'accesso ad Amazon S3.

Configura i certificati in JetBrains

Per configurare il tuo JetBrains IDEJava Runtime Environment (JRE) per considerare attendibili i TLS certificati SSL or utilizzati dal server proxy, è necessario importare i TLS certificati SSL or nel cacerts file contenuto inJRE. Il cacerts file è un file che contiene certificati root affidabili per connessioni sicure, come HTTPS eSSL, e fa parte delle impostazioni di sicurezza JRE del file. Per importare un certificato, completare la procedura seguente.

Nota

Si consiglia di eseguire un backup del cacerts file prima di modificarlo, poiché eventuali errori possono causare problemi con le connessioni sicure.

  1. Determina il percorso del cacerts file nel tuoJRE. Il percorso del cacerts file interno JRE fornito con il tuo JetBrains IDEdipende dal sistema operativo e dalla versione di JetBrains IDEstai usando.

    Di seguito sono riportati alcuni esempi di percorsi del cacerts file nei sistemi operativi più comuni. Scegli il tuo sistema operativo per vedere degli esempi.

    Nota

    <JetBrains Installation Folder>si riferisce alla directory in cui JetBrains i prodotti sono installati. Questa directory viene in genere scelta durante il processo di installazione.

    La jbr cartella rappresenta il JRE pacchetto con JetBrains IDEs, che è una versione specifica del programma JRE su misura per l'uso con JetBrains IDEs.

    Windows

    Il percorso cacerts del file per un JetBrains IDEinstallato su Windows è:

    <JetBrains Installation Folder>\jbr\bin\cacerts

    Ad esempio, se hai installato un JetBrains IDEin Windows nella posizione predefinita, il percorso potrebbe essere:

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

    Il percorso cacerts del file per un JetBrains IDEinstallato su macOS è:

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

    Ad esempio, se hai installato un JetBrains IDEsu macOS nella posizione predefinita, il percorso potrebbe essere:

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

    Il percorso cacerts del file per un JetBrains IDEinstallato su Linux è:

    /opt/jetbrains/jbr/lib/security/cacerts
  2. Determina il certificato da importare nel cacerts file. Il file del certificato ha in genere un'.derestensione .cer.crt, o. Se non sei sicuro dei certificati da aggiungere, contatta l'amministratore di rete.

  3. Importa il certificato nel cacerts keystore. È possibile farlo con il keytool comando Java.

    1. Aprire un prompt dei comandi e immettere il seguente comando:

      keytool -import -alias <alias> -file <certificate_file> -keystore <path_to_cacerts>
    2. È <alias> infatti possibile aggiungere un nome per il certificato che si sta importando per utilizzarlo in un secondo momento. Questa opzione è facoltativa.

    3. Per<certificate_file>, specifica il percorso del certificato che stai importando. Dovrebbe essere il percorso del .cer.crt, o il .der file contenente il certificato.

    4. Per<path_to_cacerts>, specifica il percorso del file cacerts keystore salvato nel passaggio 1. Questo è il file in cui stai importando il certificato.

    Ad esempio, se desideri importare un certificato denominato my_certificate.cer nel cacerts keystore del pacchetto JRE IntelliJ IDEA su Windows e desideri assegnare l'alias myalias al certificato, il comando potrebbe essere:

    keytool -import -alias myalias -file my_certificate.cer -keystore "C:\Program Files\JetBrains\IntelliJ IDEA 2022.3.2\jbr\bin\cacerts"
  4. Durante il processo di importazione, ti verrà richiesto di inserire la password del keystore. La password predefinita per il cacerts keystore è. changeit

  5. Dopo aver eseguito il comando, ti verrà chiesto di considerare attendibile il certificato. Per confermare che il certificato è attendibile e completare l'importazione, inserisciyes.

  6. Potrebbe inoltre essere necessario aggiungere i certificati allo IDE stesso, oltre aJRE. Per ulteriori informazioni, consulta Certificati server nel JetBrains documentazione.

Configurare i certificati in Visual Studio Code

Per configurare Visual Studio Code per considerare attendibili i TLS certificati SSL or utilizzati dal server proxy, assicurati di aver configurato le seguenti impostazioni proxy per il tuo sistema operativo.

Configura le seguenti impostazioni proxy per Visual Studio Code su macOS.

Aggiungi certificati al tuo portachiavi macOS

Se non l'hai già fatto, devi aggiungere i certificati utilizzati dal tuo server proxy al tuo macOS portachiavi. Per informazioni sull'aggiunta di certificati al portachiavi, consulta Aggiungere certificati a un portachiavi utilizzando Keychain Access su Mac nella Guida per l'utente di Keychain Access.

Installa l'estensione Mac CA VSCode

L'VSCodeestensione Mac CA consente ad Amazon Q di accedere ai certificati che hai aggiunto a Keychain Access sul tuo Mac.

Per installare l'estensione:

  1. Cerca mac-ca-vscode in VS Code riquadro delle estensioni e scegli Installa.

  2. Restart (Riavvia) VS Code.

Aggiorna le impostazioni del proxy in VS Code su macOS

Aggiorna le seguenti impostazioni per assicurarti VS Code è configurato correttamente per il tuo proxy.

  1. Apri le impostazioni in VS Code.

  2. Inserire proxy nella barra di ricerca.

  3. Nel campo Http: Proxy, aggiungi il tuo proxyURL.

  4. Deseleziona Http: Proxy Strict SSL.

  5. Nell'elenco a discesa Http: Proxy Support, scegli attivo.

  6. Nella barra di ricerca delle impostazioni, inseriscihttp.experimental.systemCertificatesV2. Seleziona Http › Experimental: System Certificates V2.

Configurare le seguenti impostazioni proxy per Visual Studio Code su Windows.

Aggiungi il certificato come certificato root attendibile su Windows

Se non l'hai già fatto, devi aggiungere i certificati utilizzati dal tuo server proxy all'archivio Trusted Root Certification Authorities in Windows. Per aggiungere un certificato, completare la procedura seguente:

  1. Aprire lo strumento di ricerca o la finestra di comando Esegui.

  2. Inserisci quanto segue per aprire lo strumento Certificate Manager:

    certmgr.msc
  3. Scegli l'archivio Trusted Root Certification Authorities.

  4. Fai clic con il pulsante destro del mouse su Certificati, scegli Tutte le attività, quindi scegli Importa... .

  5. Segui le istruzioni fornite per importare il tuo certificato proxy.

  6. Dopo aver importato il certificato, conferma che il certificato è stato aggiunto.

    Nell'archivio Trusted Root Certification Authorities, fai doppio clic su Certificati. Fai clic con il pulsante destro del mouse sul certificato aggiunto e scegli Proprietà. In Scopi del certificato, deve essere selezionata l'opzione Abilita tutti gli scopi per questo certificato.

Installa l'estensione Win-CA VSCode

L'VSCodeestensione Win-CA consente ad Amazon Q di accedere ai certificati che hai aggiunto ai Trusted Root Certificates in Windows.

Per installare l'estensione:

  1. Cerca win-ca in VS Code riquadro delle impostazioni.

  2. Nell'elenco a discesa Inject, scegli aggiungi.

Aggiorna le impostazioni del proxy in VS Code su Windows

Aggiorna le seguenti impostazioni per assicurarti VS Code è configurato correttamente per il tuo proxy.

  1. Apri le impostazioni in VS Code.

  2. Inserire proxy nella barra di ricerca.

  3. Nel campo Http: Proxy, aggiungi il tuo proxyURL.

  4. Deseleziona Http: Proxy Strict SSL.

  5. Nell'elenco a discesa Http: Proxy Support, scegli attivo.

  6. Nella barra di ricerca delle impostazioni, inseriscihttp.experimental.systemCertificatesV2. Seleziona Http › Experimental: System Certificates V2.

  7. Restart (Riavvia) VS Code.

Consenti l'accesso ad Amazon S3

Durante una trasformazione, Amazon Q carica il codice in un bucket Amazon S3 di proprietà del servizio. Se la tua rete o organizzazione non ha configurato l'accesso ad Amazon S3, Amazon Q non è in grado di caricare il tuo progetto.

Per garantire che Amazon Q possa caricare il tuo progetto, assicurati che la configurazione del proxy e gli altri componenti di rete, come le politiche di Data Lost Prevention (DLP), siano configurati per consentire l'accesso ad Amazon S3. Potrebbe inoltre essere necessario inserire nell'elenco delle autorizzazioni il bucket Amazon S3 in cui Amazon Q carica il progetto. Per ulteriori informazioni, consulta Perimetri di dati per le risorse Amazon Q.

Se trasformi un progetto di grandi dimensioni, DLP le policy o altri componenti di rete potrebbero causare ritardi e impedire il corretto caricamento se non sono configurati per inserire nella lista consentita il bucket Amazon S3. Se scegli di non inserire il bucket nella lista consentita, potresti dover trasformare un progetto più piccolo in modo che Amazon Q possa caricarlo.

Perché sono i miei Maven comandi non riusciti?

Di seguito sono Maven problemi di configurazione che potresti riscontrare in JetBrains e Visual Studio Code IDEs. Se risolvi i problemi e continui a vedere Maven errori, potrebbe esserci un problema con il tuo progetto. Utilizza le informazioni contenute nei log degli errori per risolvere eventuali problemi relativi al progetto, quindi prova a trasformare nuovamente il progetto.

Aggiornamento Maven configurazione in JetBrains

Se una trasformazione fallisce JetBrains a causa di Maven problemi relativi ai comandi, i log degli errori vengono visualizzati nella scheda Esegui. Utilizza le informazioni nei log per risolvere il problema. Di seguito sono riportati alcuni problemi che potresti dover risolvere:

  • Assicurati che il tuo Maven il percorso principale è impostato su Bundled. Vai a Impostazioni, quindi espandi la sezione Build, Execution, Deployment. Espandi la sezione Build Tools, quindi espandi Maven. Nell'elenco a discesa del percorso principale di Maven, scegli Bundled.

  • Assicurati che Java runtime environment (JRE) sta usando il tuo progettoJDK. Vai su Impostazioni, quindi espandi la sezione Build, Execution, Deployment. Espandi Mavene scegli Runner. Nell'elenco a JREdiscesa, scegli Usa progetto. JDK

  • Assicurati che Maven è abilitato. Vai su Impostazioni e scegli Plugin. Cerca Maven e scegli il Maven . Se vedi un pulsante Abilita, sceglilo per abilitarlo Maven.

Aggiornamento Maven configurazione in Visual Studio Code

Se una trasformazione fallisce VS Code a causa di Maven problemi di comando, un file di testo che contiene i log degli errori si apre in una nuova scheda. Utilizza le informazioni contenute nei log per risolvere il problema.

Assicurati di aver configurato una delle seguenti opzioni:

  • Il progetto contiene un Maven wrapper nella cartella principale del progetto

  • Una versione di Maven supportato da Amazon Q è disponibile sul tuo PATH

Per ulteriori informazioni, consulta Come faccio ad aggiungere Maven al mio? PATH

Come faccio ad aggiungere Maven al mio? PATH

Per trasformare il tuo codice in VS Code senza usare un Maven wrapper, è necessario installare Maven e aggiungilo alla tua PATH variabile.

Per verificare se lo hai Maven già installato correttamente, eseguilo mvn -v in un nuovo terminale del sistema operativo esterno a Visual Studio Code. Dovresti vedere un output con il tuo Maven versione.

Se ottieni un output nel tuo Visual Studio Code terminale ma non nel terminale del sistema operativo, o se il comando non viene trovato, è necessario aggiungere Maven al tuoPATH.

Per aggiungere Maven al tuoPATH, segui le istruzioni relative alla tua macchina.

macOS

Per aggiungere Maven sul tuo macOSPATH, completa i seguenti passaggi.

  1. Individua il tuo Maven la directory di installazione o la cartella in cui è stata effettuata l'installazione Mavene salva il percorso di quella cartella.

  2. Apri il file di configurazione per la tua shell in un editor a tua scelta. Per le versioni recenti di macOS, la shell predefinita è zsh e il file di configurazione predefinito si trova in. ~/.zshrc

    Aggiungi le seguenti righe alla fine del file di configurazione. Imposta il valore M2_HOME di nel percorso salvato nel passaggio 1:

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

    Questi comandi rendono il mvn comando disponibile in tutti i terminali.

  3. Chiudi tutte le finestre dei terminali del sistema operativo e chiudi tutte Visual Studio Code istanze.

  4. Per verificarlo Maven è stato aggiunto al tuoPATH, apri un nuovo terminale del sistema operativo ed esegui il seguente comando:

    mvn -v

    Dovresti vedere un output con il tuo Maven versione.

  5. Dopo aver visto il tuo Maven uscita, riavvio Visual Studio Code. Potrebbe inoltre essere necessario riavviare il computer. Aprirne una nuova Visual Studio Code terminale ed esegui il seguente comando:

    mvn -v

    L'output deve essere identico a quello del passaggio 4. Se il file Visual Studio Code l'output è diverso, prova quanto segue per assicurarti che la configurazione sia corretta:

    • Controlla la tua PATH variabile in Visual Studio Code. Un'IDEestensione potrebbe alterarlo in modo PATH tale da differire dalla variabile localePATH. Disinstalla l'estensione per rimuoverla dal tuo. PATH

    • Controlla la tua shell predefinita in Visual Studio Code. Se è impostato su qualcosa di diverso dazsh, ripeti questi passaggi per la shell.

Windows

Per aggiungere Maven al tuo Windows PATH, completa i seguenti passaggi:

  1. Individua il tuo Maven la directory di installazione o la cartella in cui è stata effettuata l'installazione Mavene salva il percorso di quella cartella.

  2. Apri la finestra Variabili d'ambiente:

    1. Seleziona Windows pulsante per aprire la barra di ricerca.

    2. Entra Edit environment variables for your account e sceglilo.

  3. Nella finestra Variabili d'ambiente, cerca la variabile Path. Se hai già una variabile Path, scegli Modifica... per aggiornarla. Se non vedi una variabile Path, scegli Nuovo... per aggiungerne una.

  4. Nella finestra Modifica variabile di ambiente che appare, fai doppio clic sul percorso esistente per modificarlo oppure scegli Nuovo per aggiungere una nuova voce di percorso.

    Sostituisci quello esistente Maven immissione del percorso con il percorso salvato nel passaggio 1 o aggiungere il percorso come nuova voce. Alla fine del percorso, aggiungete \bin come suffisso, come nell'esempio seguente:

    C:\Users\yourusername\Downloads\apache-maven-3.9.6-bin\apache-maven-3.9.6\bin
  5. Scegliete OK per salvare l'immissione del percorso, quindi scegliete nuovamente OK nella finestra Variabili d'ambiente.

  6. Aprite un nuovo prompt dei comandi ed eseguite il seguente comando:

    mvn -v

    Dovresti vedere un output con il Maven versione.

Perché Amazon Q non può creare il mio codice?

Se la trasformazione fallisce durante la creazione del codice da parte di Amazon Q, il progetto potrebbe non essere configurato correttamente per l'ambiente in cui Amazon Q crea il codice. Potrebbe essere necessario aggiornare la configurazione della build o l'implementazione del codice.

Esamina l'output del log di compilazione fornito da Amazon Q per determinare se ci sono modifiche che puoi apportare al tuo progetto. Di seguito sono riportati alcuni problemi comuni che potrebbero impedire ad Amazon Q di creare il codice.

Rimuovi i percorsi assoluti in pom.xml

Se hai un percorso assoluto nel tuo file pom.xml, Amazon Q non sarà in grado di trovare i file pertinenti e, di conseguenza, potrebbe non essere in grado di creare il tuo codice.

Di seguito è riportato un esempio di percorso assoluto che potresti avere nel tuo pom.xml file:

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

Invece di utilizzare un percorso assoluto, potete creare un percorso relativo utilizzando un puntatore. Di seguito è riportato un esempio di come è possibile sostituire il percorso assoluto precedente con un percorso relativo:

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

Rimuovi i database locali o esterni nei test unitari

Amazon Q esegue tutti i test unitari del tuo progetto quando crea il codice. Se un test unitario richiama un database locale o esterno, Amazon Q non avrà accesso al database, causando il fallimento della compilazione. Per evitare che la compilazione fallisca, devi rimuovere la chiamata al database dallo unit test o rimuovere lo unit test prima di inviare la trasformazione.

Perché la mia trasformazione non è riuscita dopo 55 minuti?

Se il processo di trasformazione del codice fallisce dopo 55 minuti, è probabile che il tempo di compilazione del codice superi il limite di compilazione. Attualmente esiste un limite di tempo di 55 minuti per la creazione del codice.

Se il tempo di compilazione locale richiede 55 minuti o più, riduci il tempo di compilazione del progetto per trasformare il codice. Se la compilazione locale è più veloce di quella con Code Transformation, controlla se nel progetto sono presenti attività che potrebbero non riuscire o richiedere più tempo in un ambiente diverso. Prendi in considerazione la possibilità di disabilitare i casi di test di lunga durata. Valuta anche la possibilità di utilizzare dei timeout per i tentativi di accesso a risorse che potrebbero non essere disponibili IDE nell'ambiente sicuro o in Internet.

Perché non riesco a scaricare il mio codice trasformato?

Se non riesci a scaricare il codice una volta completata la trasformazione, probabilmente è dovuto a uno dei seguenti problemi. Consulta l'argomento corrispondente all'errore visualizzato in Amazon Q.

Riduci le dimensioni del progetto

Una volta completata la trasformazione, Amazon Q genera un elemento di output che contiene una differenza con il codice aggiornato e un riepilogo della trasformazione con informazioni sulle modifiche apportate. L'elemento di output deve essere pari o inferiore a 1 GB per poterlo scaricare. IDE

Se l'artefatto di output supera il limite, non sarà possibile scaricare il codice aggiornato o il riepilogo della trasformazione. Prova a trasformare un progetto più piccolo per evitare un artefatto di output di grandi dimensioni. Se il problema persiste, contatta. Support Per informazioni su come contattare Support Amazon Q, consultaUtilizzo di Amazon Q Developer per chattare con Support.

Scarica il codice diff entro 24 ore

Il file code diff con il codice aggiornato è disponibile solo per 24 ore dopo il completamento della trasformazione. Se sono trascorse più di 24 ore dal completamento della trasformazione, riavvia la trasformazione per scaricare il file diff.

Configura le impostazioni proxy nel tuo IDE

Amazon Q scarica il codice aggiornato da un bucket Amazon S3 di proprietà del servizio. Parte del processo di download prevede l'utilizzo TLS dei SSL nostri certificati per stabilire una comunicazione tra Amazon S3 e il tuo. IDE Se utilizzi un server proxy, i SSL TLS certificati utilizzati dal server proxy devono essere considerati affidabili, altrimenti Amazon Q non sarà in grado di caricare il tuo progetto.

Per scaricare il codice, potrebbe essere necessario configurare i certificati IDE di attendibilità o aggiornare altre impostazioni proxy. Per ulteriori informazioni sull'aggiornamento delle impostazioni del proxy, consultaConfigura le impostazioni del proxy nel tuo IDE.

Rimuovi i caratteri jolly in JetBrains impostazioni proxy

Se hai configurato le impostazioni proxy nel JetBrains IDE, potresti visualizzare il seguente errore durante il download del codice aggiornato:

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

Ciò è probabilmente causato dalla presenza di un carattere jolly (*) nel campo Nessun proxy for delle impostazioni proxy IDE dell'utente. Il codice Java SDK utilizzato da Amazon Q non supporta le voci con caratteri jolly in questo campo.

Per scaricare il codice, rimuovi eventuali caratteri jolly dal campo Nessun proxy for, quindi riavvia il file. IDE Se devi specificare gli host che devono ignorare il proxy, usa un'espressione regolare anziché un jolly. Per aggiornare le impostazioni del proxy nel tuo computer JetBrains IDE, consulta HTTPProxy nel JetBrains documentazione.

Come posso accedere ai log di trasformazione del codice?

Accedi ai log in JetBrains

Per informazioni su come accedere JetBrains file di registro, vedere Individuazione dei file di IDE registro nel JetBrains documentazione.

Per trovare i log emessi da Amazon Q in JetBrains, cerca nei IDE log la seguente stringa:

software.aws.toolkits.jetbrains.services.codemodernizer

I log di trasformazione del codice iniziano con la stringa precedente. Registri generati da Maven vengono visualizzati nella scheda Esegui e hanno la stringa precedente prima e dopo la voce del registro.

Accedi ai log in Visual Studio Code

Per trovare i log emessi da Amazon Q in VS Code, completa i seguenti passaggi:

  1. Scegli Visualizza nella barra di navigazione in alto, quindi scegli Command Palette.

  2. Cerca Amazon Q: View Logs nella palette dei comandi che appare.

  3. I registri si aprono in. IDE Per cercare nei file di registroCodeTransformation, usa CMD + F oControl + F.

La trasformazione del codice effettua l'accesso VS Code hanno il prefisso. CodeTransformation: Di seguito è riportato un esempio di registro generato in VS Code per un Maven errore di copia delle dipendenze:

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

Come posso trovare l'ID del mio lavoro di trasformazione?

Trova il tuo ID di lavoro in JetBrains

Per trovare un ID del lavoro di trasformazione in JetBrains, vai alla scheda Dettagli della trasformazione in Transformation Hub e scegli l'icona Mostra stato del lavoro (orologio).

Trova il tuo ID di lavoro in Visual Studio Code

Per trovare un ID del lavoro di trasformazione in VS Code, vai al Transformation Hub e scegli l'icona Mostra stato del lavoro (orologio).