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 che corrisponde 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 di certificati SSL o TLS per stabilire la comunicazione tra Amazon S3 e il tuo IDE. Se utilizzi un server proxy, i certificati SSL o TLS utilizzati dal tuo server proxy devono essere 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 l'IDE o il sistema operativo in modo che i certificati siano affidabili o che aggiorni 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 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 l'JetBrainsIDE Java Runtime Environment (JRE) in modo che consideri attendibili i certificati SSL o TLS utilizzati dal server proxy, è necessario importare i certificati SSL o TLS nel cacerts file in JRE. Il cacerts file è un file che contiene certificati root affidabili per connessioni sicure come HTTPS e SSL e fa parte delle impostazioni di sicurezza di JRE. 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 tuo JRE. Il percorso del cacerts file nel file JRE interno fornito con l'JetBrainsIDE dipende dal sistema operativo e dalla versione dell'JetBrainsIDE in uso.

    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 sono installati i JetBrains prodotti. Questa directory viene in genere scelta durante il processo di installazione.

    La jbr cartella rappresenta il pacchetto JRE fornito con JetBrains IDEs, che è una versione specifica di JRE personalizzata per l'uso con. JetBrains IDEs

    Windows

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

    <JetBrains Installation Folder>\jbr\bin\cacerts

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

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

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

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

    Ad esempio, se hai installato un JetBrains IDE su 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 IDE installato 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 incluso IntelliJ IDEA in 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 all'IDE stesso, oltre al JRE. Per ulteriori informazioni, consulta Certificati del server nella JetBrains documentazione.

Configura i certificati in Visual Studio Code

Visual Studio CodePer configurare l'attendibilità dei certificati SSL o TLS 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 macOS.

Aggiungi certificati al tuo portachiavi macOS

Se non l'hai già fatto, devi aggiungere i certificati utilizzati dal 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' VSCode estensione 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 nel riquadro delle VS Code estensioni e scegli Installa.

  2. Riavviare VS Code.

Aggiorna le impostazioni del proxy VS Code in macOS

Aggiorna le seguenti impostazioni per assicurarti che VS Code siano configurate correttamente per il tuo proxy.

  1. Apri le impostazioni inVS Code.

  2. Inserire proxy nella barra di ricerca.

  3. Nel campo Http: Proxy, aggiungi l'URL del tuo proxy.

  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.

Configura le seguenti impostazioni proxy Visual Studio Code per 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' VSCode estensione 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 nel riquadro VS Code delle impostazioni.

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

Aggiorna le impostazioni del proxy in Windows VS Code

Aggiorna le seguenti impostazioni per assicurarti che VS Code sia configurata correttamente per il tuo proxy.

  1. Apri le impostazioni inVS Code.

  2. Inserire proxy nella barra di ricerca.

  3. Nel campo Http: Proxy, aggiungi l'URL del tuo proxy.

  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. Riavviare 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 prevenzione della perdita dei dati (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 Bucket URLs Amazon S3 e elenco dei dati consentiti ARNs .

Se trasformi un progetto di grandi dimensioni, le politiche DLP 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é i miei Maven comandi falliscono?

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

Aggiorna la configurazione Maven in JetBrains

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

  • Assicurati che il tuo percorso Maven principale sia impostato su Bundled. Vai su 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 l'ambiente di Java runtime (JRE) utilizzi il JDK del tuo progetto. Vai su Impostazioni, quindi espandi la sezione Build, Execution, Deployment. Espandi Mavene scegli Runner. Nell'elenco a discesa JRE, scegli Usa Project JDK.

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

Aggiorna Maven la configurazione in Visual Studio Code

Se una trasformazione fallisce a VS Code causa di problemi di Maven comando, un file di testo contenente i log degli errori si apre in una nuova scheda. Utilizzate 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 Maven supportata da Amazon Q è disponibile sul PATH

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

Come faccio ad aggiungere Maven al mio? PATH

Per trasformare il codice VS Code senza utilizzare un Maven wrapper, è necessario installarlo Maven e aggiungerlo alla variabile. PATH

Per verificare se l'Maveninstallazione è già stata eseguita correttamente, eseguila mvn -v in un nuovo terminale del sistema operativo esterno a. Visual Studio Code Dovresti vedere un output con la tua Maven versione.

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

Per aggiungerlo Maven al tuoPATH, segui le istruzioni del tuo computer.

macOS

Per aggiungerlo Maven a macOSPATH, completa i seguenti passaggi.

  1. Individua la directory di Maven installazione o la cartella in cui è stata effettuata Maven l'installazione e salva il percorso di tale 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 le istanzeVisual Studio Code.

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

    mvn -v

    Dovresti vedere un output con la tua Maven versione.

  5. Dopo aver visto l'Mavenoutput, riavviaVisual Studio Code. Potrebbe inoltre essere necessario riavviare il computer. Apri un nuovo Visual Studio Code terminale ed esegui il seguente comando:

    mvn -v

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

    • Controlla la tua PATH variabileVisual Studio Code. Un'estensione IDE potrebbe alterarla in modo PATH tale da renderla diversa dalla variabile localePATH. Disinstalla l'estensione per rimuoverla dal tuo. PATH

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

Windows

Per aggiungerlo Maven alla tua WindowsPATH, completa i seguenti passaggi:

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

  2. Apri la finestra Variabili d'ambiente:

    1. Scegli il 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 la voce del Maven percorso esistente con il percorso salvato nel passaggio 1 o aggiungi 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 la tua 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 nell'ambiente IDE 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 che corrisponde 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'artefatto di output deve essere pari o inferiore a 1 GB per consentire all'IDE di scaricarlo.

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. Supporto Per informazioni su come contattare Supporto Amazon Q, consultaUtilizzo di Amazon Q Developer per chattare con Supporto.

Scarica il codice diff entro 30 giorni

Il file code diff con il codice aggiornato è disponibile solo per 30 giorni dopo il completamento della trasformazione. Se sono trascorsi più di 30 giorni 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 di certificati SSL o TLS per stabilire la comunicazione tra Amazon S3 e il tuo IDE. Se utilizzi un server proxy, i certificati SSL o TLS utilizzati dal tuo server proxy devono essere affidabili, altrimenti Amazon Q non sarà in grado di caricare il tuo progetto.

Per scaricare il codice, potrebbe essere necessario configurare l'IDE in modo che consideri attendibili i certificati o aggiornare altre impostazioni del proxy. Per ulteriori informazioni sull'aggiornamento delle impostazioni del proxy, consultaConfigura le impostazioni del proxy nel tuo IDE.

Rimuovere i caratteri jolly nelle impostazioni JetBrains del proxy

Se hai configurato le impostazioni proxy nel tuo 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 del tuo IDE. L'SDK Java 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 l'IDE. Se devi specificare degli host che devono bypassare il proxy, usa un'espressione regolare anziché un jolly. Per aggiornare le impostazioni del proxy nel tuo JetBrains IDE, consulta Proxy HTTP nella JetBrains documentazione.

Come posso accedere ai log di trasformazione del codice?

Accedi ai log in JetBrains

Per informazioni su come accedere ai file di JetBrains registro, consulta Localizzazione dei file di registro IDE nella JetBrains documentazione.

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

software.aws.toolkits.jetbrains.services.codemodernizer

I log di trasformazione del codice iniziano con la stringa precedente. I log 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 inVS 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 log si aprono nell'IDE. Per cercare nei file di registroCodeTransformation, usa CMD + F oControl + F.

I log in per la trasformazione del codice VS Code hanno il prefisso. CodeTransformation: Di seguito è riportato un esempio di registro generato VS Code per un errore relativo alle dipendenze di Maven copia:

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 processo di trasformazione inJetBrains, 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).