Compartir a través de


Modernización de aplicaciones de Copilot de GitHub: actualización para Java (versión preliminar)

En este artículo se proporciona información general sobre la modernización de aplicaciones de Copilot de GitHub: actualización para Java (versión preliminar).

Las empresas suelen tratar la deuda técnica a lo largo de sus ciclos de desarrollo y la actualización es una tarea común. Puede requerir un tiempo y recursos considerables para actualizar los entornos de ejecución, marcos y dependencias de Java.

Modernización de aplicaciones copilot de GitHub: la actualización de Java (versión preliminar) es una solución basada en inteligencia artificial diseñada para ayudar a actualizar las aplicaciones Java. La herramienta utiliza IA (inteligencia artificial) para realizar las siguientes tareas:

  • Analice el proyecto y sus dependencias y propongo un plan de actualización.
  • Ejecute el plan para transformar el proyecto.
  • Corrija automáticamente los problemas durante el progreso.
  • Informe todos los detalles, incluidas las confirmaciones, los registros y la salida.
  • Realice una comprobación de vulnerabilidades comunes y vulnerabilidades de seguridad (CVE) e incoherencias de código después de la actualización.
  • Mostrar un resumen, incluidos los cambios de archivo, las dependencias actualizadas y los problemas corregidos.
  • Genere casos de prueba unitaria por separado del proceso de actualización.

La herramienta integra las funcionalidades basadas en inteligencia artificial de GitHub Copilot con herramientas de código abierto, como OpenRewrite, para automatizar los pasos de actualización complejos. Ofrece compatibilidad tanto para proyectos de Maven como de Gradle y apunta a actualizaciones entre las versiones 8, 11, 17 y 21 de Java. La herramienta tiene un enfoque particular en la modernización de aplicaciones que usan el marco de Spring Boot. El proceso de actualización le mantiene en control y garantiza la transparencia mostrando todos los registros y salidas.

En el vídeo siguiente se muestra cómo actualizar la versión de las aplicaciones de Java Spring mediante la modernización de aplicaciones de Copilot de GitHub: actualización para Java (versión preliminar):


Casos de uso comunes

Modernización de aplicaciones de Copilot de GitHub: se puede usar la actualización de Java (versión preliminar) para los siguientes casos de uso.

  • Actualice las versiones del entorno de ejecución de Java. Actualice sin problemas la aplicación de Java 8 o 11 a versiones más recientes, como Java 17 o 21.
  • Actualice a una versión más reciente del marco. Transición de Spring Boot 2.7 a versiones como la 3.2 con manejo inteligente de cambios disruptivos.
  • Detectar vulnerabilidades CVE. Detecte y resuelva vulnerabilidades de seguridad conocidas en dependencias de terceros durante el proceso de actualización.
  • Asegúrese de la coherencia del comportamiento del código. Compruebe que la aplicación se comporta después de la actualización mediante la detección y resolución de incoherencias de comportamiento.
  • Genere casos de prueba unitaria para proyectos que tengan una cobertura de prueba baja. La herramienta de generación de pruebas unitarias es capaz de crear casos de prueba unitaria independientemente del proceso de actualización.

También hay una herramienta independiente que le ayuda a migrar las aplicaciones a Azure. La modernización de aplicaciones copilot de GitHub para Java (versión preliminar) es una herramienta con tecnología de inteligencia artificial que proporciona evaluación y corrección de código, y garantiza compilaciones correctas en una solución, lo que mejora la velocidad del desarrollador, la calidad y la confianza. Para obtener más información, vea GitHub Copilot App Modernization for Java (versión preliminar).

Conceptos

La modernización de aplicaciones de Copilot de GitHub: actualización para Java (versión preliminar) sigue un flujo de trabajo guiado de actualización en varias fases en Visual Studio Code. En las secciones siguientes se proporciona un modelo conceptual de cómo funciona la herramienta:

1. Solicitud inicial

Se proporciona una solicitud inicial en el modo de agente de Visual Studio Code, como Actualizar mi proyecto de Java a Java 17 y Spring Boot 3.2.

2. Análisis de proyectos

En función de este mensaje, la herramienta evalúa la estructura del proyecto de Java actual en el área de trabajo, incluida la herramienta de compilación: Las versiones de Maven o Gradle - JDK y las dependencias.

A continuación, la herramienta genera un plan de actualización inicial en un archivo plan.md , que describe los cambios planeados.

3. Planear la personalización

En este paso, puede revisar y editar el plan de actualización para ajustar las versiones de destino de JDK, marcos o bibliotecas de terceros. Después de confirmar el plan, se inicia la actualización.

4. Transformación automatizada de código

Aquí es donde tiene lugar la transformación de código. Esta transformación consta principalmente de los dos pasos principales siguientes:

  1. La herramienta usa primero una herramienta de código abierto denominada OpenRewrite para aplicar la transformación de código.
  2. Si hay algún problema restante, GitHub Copilot soluciona estos problemas dinámicamente hasta que no haya más problemas.

Durante este proceso, el desarrollador puede ver directamente el progreso a través del archivo progress.md .

5. Validación

Una vez completada la fase anterior, la herramienta ejecuta comprobaciones adicionales, incluidas las siguientes comprobaciones:

  • Vulnerabilidades de seguridad CVE en dependencias actualizadas.
  • Cambios en el comportamiento del código.

La herramienta intenta resolver automáticamente los problemas detectados y le permite revisar y aprobar correcciones.

6. Comprobación final y resumen

Cuando se realiza la fase de validación, la herramienta ejecuta comprobaciones finales y presenta un resumen final. En esta fase, la herramienta realiza las siguientes tareas:

  • Vuelve a generar el proyecto y vuelve a ejecutar comprobaciones de validación.
  • Proporciona un resumen completo de la actualización en un archivo summary.md, incluidos los cambios de dependencia, las diferencias de archivo y los registros de confirmación.

Modernización de aplicaciones de GitHub Copilot: la actualización de Java (versión preliminar) está diseñada para ayudarle mediante la eliminación de gran parte del esfuerzo manual y las estimaciones de las actualizaciones de Java, lo que ofrece una ruta de acceso más segura y rápida a la modernización de los código base heredados.

Paso siguiente

Inicio rápido: actualizar un proyecto de Java con App Modernization de GitHub Copilot: actualización para Java (versión preliminar)