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.
Actualización de versiones de Java con Amazon Q Developer
Amazon Q Developer puede actualizar sus aplicaciones Java a versiones de idiomas más recientes en el entorno de desarrollo integrado (IDE). Los cambios que Amazon Q puede realizar para actualizar el código incluyen la actualización de componentes de código obsoletos y APIs la actualización de bibliotecas, marcos y otras dependencias del código.
Para transformar el código, Amazon Q primero lo crea en la versión del idioma de origen y comprueba que tiene la información necesaria para realizar la transformación. Una vez que Amazon Q haya transformado correctamente el código, usted verificará y aceptará los cambios en su IDE. Dado que Amazon Q Developer realiza los cambios mínimos necesarios para que el código actualizado sea compatible con el JDK de destino, es necesaria una transformación adicional para actualizar las bibliotecas y dependencias del proyecto. Para obtener más información sobre cómo Amazon Q transforma tu código, consultaCómo transforma Amazon Q Developer el código para las actualizaciones del lenguaje Java.
Temas
Actualizaciones de Java compatibles y IDEs
Actualmente, Amazon Q admite las siguientes versiones de código fuente y versiones de destino de Java para las transformaciones. La transformación del código a la misma versión de Java incluye la actualización de las bibliotecas y otras dependencias de la versión del código fuente.
Versión de código fuente | Versiones de destino compatibles |
---|---|
Java 8 | Java 17 y Java 21 |
Java 11 | Java 17 y Java 21 |
Java 17 | Java 17 y Java 21 |
Java 21 |
Java21 |
Amazon Q admite las siguientes actualizaciones de Java IDEs:
-
Módulos en JetBrains IDEs
-
Proyectos y espacios de trabajo en Visual Studio Code
Paso 1: requisitos previos
Antes de continuar, asegúrese de que ha completado los pasos en Configurar Amazon Q en su IDE.
Asegúrese de que se cumplen los siguientes requisitos previos antes de comenzar el trabajo de transformación de código:
-
Su proyecto está escrito en una Javaversión compatible y se basa en Maven ella.
-
Su proyecto se construye correctamente Maven en su IDE. MavenActualmente se admite la versión 3.8 o posterior.
-
El JDK de origen del proyecto está disponible localmente y es la versión del código de origen. Por ejemplo, si está transformando el código de Java 8, la instalación local de JDK debería ser JDK 8.
-
Su proyecto se compila en 55 minutos o menos.
-
El proyecto está configurado correctamente y se ha especificado la versión correcta de JDK. Para obtener más información, consulte Paso 2: configuración del proyecto.
-
Su proyecto no requiere acceso a los recursos de su red privada, incluida una nube privada virtual (VPC) o una red en las instalaciones. Por ejemplo, si el proyecto contiene pruebas unitarias que se conectan a una base de datos de la red, la transformación fallará.
-
Su proyecto no usa complementos que empaqueten lenguajes distintos de Java en su proyecto de Java. Por ejemplo, si su proyecto utiliza el código de interfaz frontend-maven-plugin
para ejecutar el JavaScript código de interfaz además del código fuente de Java, la transformación fallará. -
Su red local permite cargas a los buckets de Amazon S3 que Amazon Q utiliza para transformar el código. Para obtener más información, consulte Permitir el acceso a los buckets de Amazon S3 en los perímetros de datos.
Paso 2: configuración del proyecto
Para configurar el proyecto, utilice la siguiente información para el IDE que esté utilizando.
Configuración de un proyecto en JetBrains
Para configurar el proyecto en JetBrains, puede que tenga que especificar los siguientes ajustes del proyecto y del módulo.
Si los módulos usan el mismo JDK y el mismo nivel de idioma que su proyecto, no necesita actualizar la configuración del módulo.
-
SDK del proyecto: el JDK que se utiliza para compilar el proyecto.
-
Nivel de lenguaje del proyecto: la versión de Java utilizada en el proyecto.
-
SDK de módulo: el JDK que se utiliza para compilar el módulo.
-
Nivel de idioma del módulo: la versión de Java utilizada en el módulo.
-
Maven Runner JRE: el JDK con el que compila el módulo.
Actualización de la configuración del proyecto y del módulo
Para actualizar la configuración de SDK y del nivel de lenguaje de su proyecto o módulo, realice los siguientes pasos:
-
En su IDE de JetBrains, seleccione Archivo y, a continuación, Estructura del proyecto.
-
Se abrirá la ventana Estructura del proyecto. En Configuración del proyecto, seleccione Módulos.
-
Para actualizar el JDK del proyecto, selecciónelo en la lista desplegable situada junto a SDK.
-
Para actualizar el lenguaje del proyecto, elija una opción en el menú desplegable situado junto a Nivel de lenguaje.
-
-
En Project Settings, seleccione Modules.
-
Para actualizar el JDK del módulo, selecciónelo en la lista desplegable situada junto a SDK.
-
Para actualizar el lenguaje del módulo, elija una opción en el menú desplegable situado junto a Nivel de lenguaje.
-
Para obtener más información, consulte Project structure settings
Actualización de la configuración de Maven
Para actualizar el Maven Runner JRE, realice los siguientes pasos:
-
En su IDE de JetBrains, elija el icono del engranaje y, a continuación, seleccione Configuración en el menú que aparece.
-
En la ventana Configuración, elija Compilación, ejecución, implementación, a continuación, Herramientas de compilación y, a continuación, Maven y Runner.
-
En el campo JRE, elija el JDK utilizado para compilar el módulo que está transformando.
Configuración de un proyecto en VS Code
Para configurar el proyecto en VS Code, el proyecto debe contener lo siguiente:
-
Un archivo
pom.xml
en la carpeta raíz del proyecto -
Un archivo
.java
en el directorio del proyecto
Si su proyecto contiene un ejecutable de contenedor de Maven (mvnw
para macOS o mvnw.cmd
para Windows), asegúrese de que esté en la raíz del proyecto. Amazon Q utilizará el contenedor y no será necesaria ninguna otra configuración de Maven.
Si no está utilizando un contenedor de Maven, instale Maven. Para obtener más información, consulte la sección Installing Apache
Maven
Después de instalar Maven, agréguelo a su variable de PATH
. Para obtener más información, consulte ¿Cómo agrego Maven a mi PATH?. La variable runtime
de Java también debe apuntar a un JDK y no a un JRE. Para confirmar que la configuración es correcta, ejecute mvn -v
. El resultado debería mostrar su versión de Maven y la variable runtime
que apunta a la ruta a su JDK.
Paso 3: Crear un archivo de actualización de dependencias (opcional)
Puede proporcionar a Amazon Q un archivo de actualización de dependencias, un archivo YAML que muestre las dependencias de su proyecto y las versiones a las que debe actualizarse durante una transformación. Al proporcionar un archivo de actualización de dependencias, puede especificar dependencias de terceros y propias que Amazon Q no sabría actualizar de otro modo.
Las dependencias propias se refieren a las bibliotecas, complementos y marcos que mantiene su organización y que solo están disponibles localmente o en la red privada de su organización. Amazon Q puede acceder a sus dependencias propias cuando realiza compilaciones en su entorno local. Para obtener más información, consulte Cree código en su entorno local. Las dependencias de terceros están disponibles públicamente o son dependencias de código abierto que no son exclusivas de su organización.
Puede especificar las dependencias propias que desee actualizar en un archivo YAML y Amazon Q las actualizará durante la actualización del JDK (por ejemplo, de Java 8 a 17). Puede iniciar una transformación independiente (del 17 al 17 o del 21 al 21) después de la actualización inicial del JDK para actualizar las dependencias de terceros.
Una vez que Amazon Q realice una actualización mínima de JDK, puede iniciar una transformación independiente para actualizar todas las dependencias de terceros. Como alternativa, puede especificar las dependencias de terceros y sus versiones en un archivo YAML para actualizar únicamente esas dependencias durante la transformación de la actualización de la biblioteca.
Amazon Q le pedirá que proporcione un archivo de actualización de dependencias durante la transformación. Si desea proporcionar uno, primero asegúrese de haber configurado el archivo correctamente. Los siguientes campos son obligatorios en el archivo YAML:
-
nombre: el nombre del archivo de actualización de la dependencia.
-
descripción (opcional): descripción del archivo de actualización de dependencias y de qué transformación.
-
DependencyManagement: contiene la lista de dependencias y complementos que se deben actualizar.
-
dependencias: contiene el nombre y la versión de las bibliotecas que se van a actualizar.
-
complementos: contiene los nombres y las versiones de los complementos que se van a actualizar.
-
identificador: el nombre de la biblioteca, el complemento u otra dependencia.
-
TargetVersion: la versión de la dependencia a la que se va a actualizar.
-
versionProperty (opcional): la versión de la dependencia que estás definiendo, tal como se establece con la
properties
etiqueta del archivo depom.xml
tu aplicación. -
OriginType: si la dependencia es propia o de un tercero, especificada por FIRST_PARTY o THIRD_PARTY.
A continuación se muestra un ejemplo de un archivo YAML de actualización de dependencias y la configuración necesaria para que Amazon Q lo analice:
name: dependency-upgrade description: "Custom dependency version management for Java migration from JDK 8/11/17 to JDK 17/21" dependencyManagement: dependencies: - identifier: "com.example:library1" targetVersion: "2.1.0" versionProperty: "library1.version" # Optional originType: "FIRST_PARTY" - identifier: "com.example:library2" targetVersion: "3.0.0" originType: "THIRD_PARTY" plugins: - identifier: "com.example.plugin" targetVersion: "1.2.0" versionProperty: "plugin.version" # Optional originType: "THIRD_PARTY"
Paso 4: Transforma tu código
Antes de transformar su propio código, quizás quiera probar que su IDE está configurado correctamente transformando un proyecto de muestra. A continuación se muestra un GitHub proyecto de muestra que es elegible para la transformación de código: https://github.com/aws-samples/aws-appconfig-java-sample
Para probar la configuración de su IDE, descargue y descomprima el proyecto de ejemplo y realice los siguientes pasos para su IDE. Si puede ver los cambios propuestos y el resumen de la transformación, estará listo para transformar su propio proyecto de código. Si la transformación falla, su IDE no se ha configurado correctamente. Para solucionar los problemas de configuración, revise Paso 2: configuración del proyecto y Solución de problemas.
nota
No apague ni cierre su máquina local durante la transformación del código porque la compilación del lado del cliente requiere una conexión de red estable.
Para actualizar la versión de lenguaje del código de su proyecto o módulo de código, realice los siguientes pasos en su IDE.