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?
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.
Configuración de los certificados en JetBrains
Para configurar su Entorno de ejecución de Java (JRE) de IDE de JetBrains para que confíe en los certificados SSL o TLS que utiliza su servidor proxy, debe importar los certificados SSL o TLS al archivo cacerts
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 del archivocacerts
en el JRE interno que se incluye con el IDE de JetBrains depende del sistema operativo y de la versión del IDE de JetBrains que utilice.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>
hace referencia al directorio en el que están instalados los productos JetBrains. 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 él. 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 llamado
my_certificate.cer
al almacén de claves decacerts
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 Server Certificates
en la documentación de JetBrains.
Configuración de certificados en Visual Studio Code
Para configurar Visual Studio Code de forma que confíe en los certificados SSL o TLS utilizados por el 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 agregar los certificados que utiliza el servidor proxy a su llavero de macOS. 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 para Mac VSCode
La VSCode extensión CA para Mac
Para instalar la extensión:
-
Busque
mac-ca-vscode
en el panel de extensiones de VS Code y seleccione Instalar. -
Reinicie VS Code.
Actualización de la configuración del proxy en VS Code en macOS
Actualice los siguientes ajustes para asegurarse de que 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.
Instala la extensión Win-CA VSCode
La VSCode extensión Win-CA permite
Para instalar la extensión:
-
Busque
win-ca
en el panel de configuración de VS Code. -
En la lista desplegable Inyectar, seleccione adjuntar.
Actualización de la configuración del proxy en VS Code en Windows
Actualice los siguientes ajustes para asegurarse de que 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. -
Reinicie 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 Bucket de Amazon S3 URLs y ARNs a la lista de permitidos.
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é fallan mis comandos Maven?
A continuación, se Maven muestran algunos problemas de configuración que puede que veas en el archivo y. JetBrains Visual Studio Code IDEs Si soluciona los problemas y sigue viendo errores de Maven, es posible que haya un problema con su 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 de la configuración de Maven en JetBrains
Si se produce un error de transformación en JetBrains debido a problemas con los comandos de Maven, 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 la ruta de inicio de Maven esté configurada como Agrupada. Vaya a Configuración y, a continuación, amplíe la sección Compilación, ejecución, implementación. Amplíe la sección Herramientas de compilación y, a continuación, amplíe Maven. En la lista desplegable de Ruta de inicio de Maven, seleccione Agrupada.
-
Asegúrese de que el entorno de tiempo de ejecución de Java (JRE) utilice el JDK de su proyecto. Vaya a Configuración y, a continuación, amplíe la sección Compilación, ejecución, implementación. Amplíe Maven y elija Runner. En la lista desplegable de JRE, seleccione Usar JDK de proyecto.
-
Asegúrese de que Maven esté habilitado. Vaya a Configuración y seleccione Complementos. Busque Maven y, a continuación, elija el complemento de Maven. Si ve un botón de Habilitación, selecciónelo para habilitar Maven.
Actualización de la configuración de Maven en Visual Studio Code
Si se produce un error en una transformación en VS Code debido a problemas con los comandos Maven, se abre un archivo de texto que contiene los registros de errores en una pestaña nueva. 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 contenedor de Maven en la carpeta raíz del proyecto
-
Hay disponible una versión de Maven compatible con Amazon Q 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 su código en VS Code sin usar un contenedor Maven, debe instalar Maven y agregarlo a su variable de PATH
.
Para comprobar si ya ha instalado Maven correctamente, ejecútelo mvn -v
en un nuevo terminal de sistema operativo externo a Visual Studio Code. Debería ver un resultado con su versión de Maven.
Si obtiene un resultado en su terminal Visual Studio Code pero no en el terminal del sistema operativo, o si no encuentra el comando, tendrá que agregar Maven a su PATH
.
Para añadir Maven a su PATH
, 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.
Descargue el código diff en un plazo de 30 días
El archivo de diferencias de códigos con el código actualizado solo estará disponible durante 30 días después de que se complete la transformación. Si han pasado más de 30 días desde que se completó la transformación, reiníciala para descargar el archivo diff.
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.
Eliminación de los caracteres comodín de la configuración del proxy de JetBrains
Si ha configurado los ajustes de proxy en su IDE de JetBrains, 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 el proxy HTTP
¿Cómo puedo acceder a los registros de transformación del código?
Acceso a registros en JetBrains
Para obtener información sobre cómo acceder a los archivos de registro de JetBrains, consulte Locating IDE log files
Para encontrar los registros emitidos por Amazon QJetBrains, busque la siguiente cadena en los registros del IDE:
software.aws.toolkits.jetbrains.services.codemodernizer
Los registros de transformación de código comienzan con la cadena anterior. Los 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.
Acceso a registros en Visual Studio Code
Para buscar los registros emitidos por Amazon Q enVS 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
.
Los registros de transformación en VS Code llevan el prefijo CodeTransformation:
. A continuación se muestra un ejemplo de un registro generado en VS Code por un error de dependencias de copia de Maven:
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?
Localización del ID de trabajo en JetBrains
Para encontrar el ID de un trabajo de transformación en JetBrains, vaya a la pestaña Detalles de la transformación en el Centro de transformación y elija el icono Mostrar estado del trabajo (reloj).
Localización del 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).