Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Solución de problemas con las transformaciones de Java
La siguiente información puede ayudarle a solucionar problemas comunes al transformar aplicaciones Java con Amazon Q Developer.
Temas
- ¿Por qué Amazon Q no puede subir mi proyecto?
- ¿Por qué son mis Maven ¿Los comandos fallan?
- ¿Cómo agrego Maven a mi PATH?
- ¿Por qué Amazon Q no puede compilar mi código?
- ¿Por qué ha fallado mi transformación después de 55 minutos?
- ¿Por qué no puedo descargar el código transformado?
- ¿Cómo puedo acceder a los registros de transformación del código?
- ¿Cómo puedo encontrar mi ID de trabajo de transformación?
¿Por qué Amazon Q no puede subir mi proyecto?
Si su proyecto no se puede cargar, es probable que se deba a uno de los siguientes problemas. Consulte el tema correspondiente al error que vea en Amazon Q.
Temas
Reducción del tamaño del proyecto
Para transformar el código, Amazon Q genera un artefacto del proyecto, que incluye el código de origen, las dependencias del proyecto y los registros de compilación. El tamaño máximo del artefacto del proyecto para un trabajo de transformación es de 2 GB. Si recibe un error relacionado con el tamaño del artefacto del proyecto, debe reducir el tamaño del proyecto o intentar transformar un proyecto más pequeño. Puede ver el tamaño del archivo del artefacto del proyecto en los registros de transformación de código. Para obtener más información, consulte ¿Cómo puedo acceder a los registros de transformación del código?
Configuración de los ajustes del proxy en su IDE
Para transformar el código, Amazon Q carga el artefacto del proyecto en un bucket de Amazon S3 propiedad del servicio. Parte del proceso de carga implica el uso de certificados SSL o TLS para establecer la comunicación entre Amazon S3 y su IDE. Si utiliza un servidor proxy, los certificados SSL o TLS utilizados por el servidor proxy deben ser de confianza; de lo contrario, Amazon Q no podrá cargar el proyecto.
Si recibe un error relacionado con su proxy o los certificados, probablemente necesite configurar su IDE o sistema operativo para que confíe en sus certificados o actualizar otros ajustes del proxy.
nota
Si está protegido por el servidor proxy o el firewall de su organización, también podrían surgir problemas no relacionados con los certificados. Si realiza los siguientes procedimientos para configurar los certificados y sigue teniendo problemas, póngase en contacto con el administrador de la red para asegurarse de que puede comunicarse con Amazon S3 desde su IDE. Para obtener más información, consulte Permiso para acceder a Amazon S3.
Configure los certificados en JetBrains
Para configurar su JetBrains Para que el IDE Java Runtime Environment (JRE) confíe en los certificados SSL o TLS utilizados por su servidor proxy, debe importar los certificados SSL o TLS al cacerts
archivo del JRE. El archivo cacerts
contiene certificados raíz de confianza para conexiones seguras, como HTTPS y SSL, y forma parte de la configuración de seguridad del JRE. Para importar un certificado, realice el siguiente procedimiento.
nota
Se recomienda hacer una copia de seguridad del archivo cacerts
antes de modificarlo, ya que cualquier error puede provocar problemas con las conexiones seguras.
-
Determine la ruta al archivo
cacerts
en su JRE. La ruta delcacerts
archivo en el JRE interno que se envía con su JetBrains El IDE depende del sistema operativo y de la versión del JetBrains El IDE que esté utilizando.A continuación, se muestran ejemplos de rutas al archivo
cacerts
en los sistemas operativos más comunes. Seleccione su sistema operativo para ver ejemplos.nota
<JetBrains Installation Folder>
se refiere al directorio donde JetBrains los productos están instalados. Este directorio se elige normalmente durante el proceso de instalación.La
jbr
carpeta representa el JRE incluido JetBrains IDEs, que es una versión específica del JRE diseñada para su uso con JetBrains IDEs. -
Determine el certificado que necesita importar al archivo
cacerts
. El archivo de certificado suele tener una extensión de archivo.cer
,.crt
o.der
. Si no está seguro de qué certificados debe agregar, póngase en contacto con el administrador de la red. -
Importe el certificado firmado al almacén de claves de
cacerts
. Puede hacerlo con el comando dekeytool
de Java.-
Abra un símbolo del sistema y escriba el comando siguiente:
keytool -import -alias <alias> -file <certificate_file> -keystore <path_to_cacerts>
-
Para
<alias>
, puede añadir un nombre al certificado que va a importar para consultarlo más adelante. Esta opción es opcional. -
Para
<certificate_file>
, especifique la ruta de acceso al certificado que va a importar. Debe ser una ruta al archivo.cer
,.crt
o.der
que contiene el certificado. -
Para
<path_to_cacerts>
, especifique la ruta al archivo de almacén de claves decacerts
que guardó en el paso 1. Este es el archivo donde va a importar el certificado.
Por ejemplo, si desea importar un certificado denominado
my_certificate.cer
alcacerts
almacén de claves del JRE incluido en IntelliJ IDEA en Windows y desea asignar el aliasmyalias
al certificado, el comando podría ser:keytool -import -alias myalias -file my_certificate.cer -keystore "C:\Program Files\JetBrains\IntelliJ IDEA 2022.3.2\jbr\bin\cacerts"
-
-
Durante el proceso de importación, se le pedirá que introduzca la contraseña del almacén de claves. La contraseña predeterminada para el almacén de claves de
cacerts
eschangeit
. -
Tras ejecutar el comando, se le pedirá que confíe en el certificado. Para confirmar que el certificado es de confianza y completar la importación, introduzca
yes
. -
Es posible que también necesite agregar los certificados al propio IDE, además del JRE. Para obtener más información, consulte Certificados de servidor
en la JetBrains .
Configure los certificados en Visual Studio Code
Para configurar Visual Studio Code para confiar en los certificados SSL o TLS que utiliza su servidor proxy, asegúrese de haber configurado los siguientes ajustes de proxy para su sistema operativo.
Configure los siguientes ajustes de proxy para Visual Studio Code en macOS.
Agregación de certificados a su llavero de macOS
Si aún no lo ha hecho, debe añadir los certificados que utiliza su servidor proxy a su macOS llavero. Para obtener información sobre cómo agregar certificados a su llavero, consulte Añadir certificados a un llavero mediante Acceso a Llaveros en el Mac
Instale la extensión CA VSCode para Mac
La VSCode extensión CA para Mac
Para instalar la extensión:
-
Busca
mac-ca-vscode
en el VS Code panel de extensiones y selecciona Instalar. -
Restart (Reiniciar) VS Code.
Actualice la configuración del proxy en VS Code en macOS
Actualice la siguiente configuración para asegurarse VS Code está configurado correctamente para su proxy.
-
Abra la configuración en VS Code.
-
Escriba
proxy
en la barra de búsqueda. -
En el campo Http: Proxy, agregue la URL del proxy.
-
Elimine la selección de Http: Proxy Strict SSL.
-
En la lista desplegable Http: Proxy Support, seleccione activado.
-
En la barra de búsqueda de configuración, introduzca
http.experimental.systemCertificatesV2
. Seleccione Http › Experimental: System Certificates V2.
Configure los siguientes ajustes de proxy para Visual Studio Code en Windows.
Agregación de certificado como certificado raíz de confianza en Windows
Si aún no lo ha hecho, debe agregar los certificados utilizados por su servidor proxy al almacén de entidades de certificación raíz de confianza en Windows. Para agregar un certificado, realice el siguiente procedimiento:
-
Abra la herramienta de búsqueda o una ventana de comandos Ejecutar.
-
Escriba los siguiente para abrir la herramienta del administrador de certificados:
certmgr.msc
-
Elija el almacén Entidades de certificación raíz de confianza.
-
Haga clic con el botón derecho del ratón en Certificados, elija Todas las tareas y, a continuación, elija Importar….
-
Siga las instrucciones que se indican para importar su certificado de proxy.
-
Después de importar el certificado, confirme que se ha agregado.
En el almacén de Entidades de certificación raíz de confianza, haga doble clic en Certificados. Haga clic con el botón derecho en el certificado que ha agregado y seleccione Propiedades. En Fines de certificado, debe seleccionarse la opción Habilitar todos los fines para este certificado.
Instale la extensión Win-CA VSCode
La VSCode extensión Win-CA permite
Para instalar la extensión:
-
Busque en el
win-ca
VS Code panel de configuración. -
En la lista desplegable Inyectar, seleccione adjuntar.
Actualice la configuración del proxy en VS Code en Windows
Actualice la siguiente configuración para asegurarse VS Code está configurado correctamente para su proxy.
-
Abra la configuración en VS Code.
-
Escriba
proxy
en la barra de búsqueda. -
En el campo Http: Proxy, agregue la URL del proxy.
-
Elimine la selección de Http: Proxy Strict SSL.
-
En la lista desplegable Http: Proxy Support, seleccione activado.
-
En la barra de búsqueda de configuración, introduzca
http.experimental.systemCertificatesV2
. Seleccione Http › Experimental: System Certificates V2. -
Restart (Reiniciar) VS Code.
Permiso para acceder a Amazon S3
Durante una transformación, Amazon Q carga el código en un bucket de Amazon S3 propiedad del servicio. Si su red u organización no ha configurado el acceso a Amazon S3, Amazon Q no podrá cargar el proyecto.
Para garantizar que Amazon Q pueda cargar el proyecto, asegúrese de que la configuración del proxy y otros componentes de la red, como las políticas de prevención de pérdida de datos (DLP), estén configurados para permitir el acceso a Amazon S3. Es posible que también deba incluir en la lista de permitidos el bucket de Amazon S3 donde Amazon Q carga el proyecto. Para obtener más información, consulte Perímetros de datos para los recursos de Amazon Q.
Si transforma un proyecto grande, las políticas de DLP u otros componentes de la red podrían provocar demoras e impedir que la carga se realice correctamente si no están configurados para incluir en la lista de permitidos el bucket de Amazon S3. Si decide no incluir el bucket en la lista, es posible que tenga que transformar un proyecto más pequeño para que Amazon Q pueda subirlo.
¿Por qué son mis Maven ¿Los comandos fallan?
Los siguientes son Maven problemas de configuración que pueden aparecer en el JetBrains y Visual Studio Code IDEs. Si abordas los problemas y sigues viendo Maven errores, es posible que haya un problema con tu proyecto. Utilice la información de los registros de errores para solucionar cualquier problema del proyecto y, a continuación, intente volver a transformar el proyecto.
Actualización Maven configuración en JetBrains
Si se produce un error en una transformación JetBrains debido a Maven problemas con los comandos, los registros de errores aparecen en la pestaña Ejecutar. Utilice la información de los registros para solucionar el problema. A continuación, se muestran algunos problemas que puede que tenga que abordar:
-
Asegúrese de que su Maven la ruta de inicio está configurada como Bundled. Vaya a Configuración y, a continuación, amplíe la sección Compilación, ejecución, implementación. Expanda la sección Herramientas de compilación y, a continuación, expanda Maven. En la lista desplegable de rutas de inicio de Maven, selecciona Empaquetado.
-
Asegúrese de que el Java el entorno de ejecución (JRE) utiliza el JDK de su proyecto. Vaya a Configuración y, a continuación, amplíe la sección Compilación, ejecución, implementación. Expandir Maveny elige Runner. En la lista desplegable de JRE, seleccione Usar JDK de proyecto.
-
Asegúrese de que Maven está activado. Vaya a Configuración y seleccione Complementos. Buscar Maven y elige el Maven el complemento. Si ve el botón Activar, selecciónelo para activarlo Maven.
Actualización Maven configuración en Visual Studio Code
Si se produce un error en una transformación VS Code debido a Maven problemas con los comandos, se abre un archivo de texto que contiene los registros de errores en una nueva pestaña. Utilice la información de los registros para solucionar el problema.
Asegúrese de haber configurado una de las siguientes opciones:
-
Su proyecto contiene un Maven contenedor en la carpeta raíz del proyecto
-
Una versión de Maven compatible con Amazon Q está disponible en su
PATH
Para obtener más información, consulte ¿Cómo agrego Maven a mi PATH?
¿Cómo agrego Maven a mi PATH
?
Para transformar tu código en VS Code sin usar un Maven envoltorio, debes instalar Maven y agréguelo a su PATH
variable.
Para comprobar si tienes Maven si ya está instalado correctamente, ejecútelo mvn -v
en un nuevo terminal de sistema operativo fuera de Visual Studio Code. Deberías ver una salida con tu Maven versión.
Si obtiene un resultado en su Visual Studio Code terminal pero no en la terminal de su sistema operativo, o si no encuentra el comando, debe agregar Maven a tuPATH
.
Para añadir Maven a la suyaPATH
, siga las instrucciones de su máquina.
¿Por qué Amazon Q no puede compilar mi código?
Si la transformación falla cuando Amazon Q está compilando el código, es posible que el proyecto no esté configurado correctamente para el entorno en el que Amazon Q compila el código. Es posible que necesite actualizar la configuración de compilación o la implementación del código.
Revise el resultado del registro de compilación que proporciona Amazon Q para determinar si hay cambios que pueda realizar en su proyecto. A continuación, se muestran algunos problemas comunes que pueden impedir que Amazon Q compile el código.
Eliminación de las rutas absolutas en pom.xml
Si tiene una ruta absoluta en el archivo pom.xml, Amazon Q no podrá encontrar los archivos relevantes y, por consiguiente, es posible que no pueda compilar el código.
A continuación se muestra un ejemplo de una ruta absoluta que podría tener en su archivo pom.xml
:
<toolspath> <path>/Library/Java/JavaVirtualMachines/jdk-11.0.11.jdk/Contents/Home/lib/tools.jar</path> </toolspath>
En lugar de utilizar una ruta absoluta, puede crear una ruta relativa con un puntero. A continuación se muestra un ejemplo de cómo puede sustituir la ruta absoluta anterior por una ruta relativa:
<toolspath> <path>${java.home}/../lib/tools.jar</path> </toolspath>
Eliminación de las bases de datos locales o externas en las pruebas unitarias
Amazon Q ejecuta todas las pruebas unitarias del proyecto cuando compila el código. Si una prueba unitaria llama a una base de datos local o externa, Amazon Q no tendrá acceso a la base de datos, lo que provocará un error en la compilación. Para evitar que la compilación falle, debe eliminar la llamada a la base de datos de la prueba unitaria o eliminar la prueba unitaria antes de enviar la transformación.
¿Por qué ha fallado mi transformación después de 55 minutos?
Si el trabajo de transformación de código falla después de 55 minutos, es probable que el tiempo de compilación del código supere el límite de tiempo de compilación. Actualmente, existe un límite de tiempo de 55 minutos para compilar el código.
Si el tiempo de compilación local es de 55 minutos o más, reduzca el tiempo de compilación del proyecto para transformar el código. Si la compilación local es más rápida que la compilación con Transformación de código, revise el proyecto para ver si hay tareas que puedan estar fallando o que requieran más tiempo en un entorno diferente. Plantéese la posibilidad de deshabilitar los casos de prueba de larga duración. Plantéese también la posibilidad de utilizar los tiempos de espera para intentar acceder a recursos que podrían no estar disponibles en el entorno IDE seguro o en Internet.
¿Por qué no puedo descargar el código transformado?
Si no puede descargar el código una vez completada la transformación, es probable que se deba a uno de los siguientes problemas. Consulte el tema correspondiente al error que vea en Amazon Q.
Temas
Reducción del tamaño del proyecto
Una vez completada la transformación, Amazon Q genera un artefacto de salida que contiene una diferencia con el código actualizado y un resumen de la transformación con información sobre los cambios realizados. El artefacto de salida debe tener 1 GB o menos para que el IDE lo descargue.
Si el artefacto de salida supera el límite, no podrá descargar el código actualizado o el resumen de la transformación. Intente transformar un proyecto más pequeño para evitar que se produzca un artefacto de gran tamaño. Si el problema persiste, ponte en contacto con Soporte. Para obtener información sobre cómo ponerse en contacto Soporte con Amazon Q, consulteUso de Amazon Q Developer para chatear con Soporte.
Descarga de diferencias del código en 24 horas
El archivo de diferencias del código con el código actualizado solo estará disponible durante 24 horas después de que se complete la transformación. Si han pasado más de 24 horas desde que se completó la transformación, reiníciela para descargar el archivo de diferencias.
Configuración de los ajustes del proxy en su IDE
Amazon Q descarga el código actualizado de un bucket de Amazon S3 propiedad del servicio. Parte del proceso de descarga implica el uso de certificados SSL o TLS para establecer la comunicación entre Amazon S3 y su IDE. Si utiliza un servidor proxy, los certificados SSL o TLS utilizados por el servidor proxy deben ser de confianza; de lo contrario, Amazon Q no podrá cargar el proyecto.
Para descargar el código, puede que tenga que configurar el IDE para que confíe en los certificados o actualizar otras configuraciones del proxy. Para obtener más información sobre la actualización de la configuración del proxy, consulte Configuración de los ajustes del proxy en su IDE.
Elimine los caracteres comodín en JetBrains configuración de proxy
Si ha configurado los ajustes de proxy en su JetBrains IDE, es posible que aparezca el siguiente error al descargar el código actualizado:
software.amazon.awssdk.core.exception.SdkClientException: Unable to execute HTTP request: Dangling meta character '*' near index 0
Es probable que esto se deba a la presencia de un carácter comodín (*) en el campo No hay proxy para de la configuración del proxy del IDE. El SDK de Java que utiliza Amazon Q no admite entradas comodín en este campo.
Para descargar el código, elimine los caracteres comodín del campo No hay proxy para y, a continuación, reinicie el IDE. Si necesita especificar los hosts que debe omitir el proxy, utilice una expresión regular en lugar de un comodín. Para actualizar la configuración del proxy en su JetBrains IDE, consulte HTTP Proxy
¿Cómo puedo acceder a los registros de transformación del código?
Access inicia sesión JetBrains
Para obtener información sobre cómo acceder JetBrains archivos de registro, consulte Localización de los archivos de registro del IDE
Para buscar los registros emitidos por Amazon Q en JetBrains, busque en los registros del IDE la siguiente cadena:
software.aws.toolkits.jetbrains.services.codemodernizer
Los registros de transformación de código comienzan con la cadena anterior. Registros generados por Maven se muestran en la pestaña Ejecutar y tienen la cadena anterior antes y después de la entrada del registro.
Access inicia sesión Visual Studio Code
Para buscar los registros emitidos por Amazon Q en VS Code, complete los siguientes pasos:
-
Elija Ver en la barra de navegación superior y, a continuación, elija Paleta de comandos.
-
Busque
Amazon Q: View Logs
en la paleta de comandos que aparece. -
Los registros se abren en el IDE. Para buscar los archivos de registro de
CodeTransformation
, utiliceCMD + F
oControl + F
.
La transformación de código inicia sesión VS Code llevan el prefijo. CodeTransformation:
A continuación se muestra un ejemplo de un registro generado en VS Code para un Maven error de copia de dependencias:
2024-02-12 11:29:16 [ERROR]: CodeTransformation: Error in running Maven copy-dependencies command mvn = /bin/sh: mvn: command not found
¿Cómo puedo encontrar mi ID de trabajo de transformación?
Encuentra tu ID de trabajo en JetBrains
Para encontrar un identificador de trabajo de transformación en JetBrains, vaya a la pestaña Detalles de la transformación en el Centro de Transformaciones y elija el icono Mostrar estado del trabajo (reloj).
Busque su ID de trabajo en Visual Studio Code
Para encontrar el ID de un trabajo de transformación en VS Code, vaya al Centro de transformación y elija el icono Mostrar estado del trabajo (reloj).