Documentación / El IDE

Ejecutar y depurar

Build con Maven, Gradle, Ant, npm o Cargo, servidores de aplicaciones, depuradores JDWP, CDP y PL/SQL, hot swap y diagnóstico de la JVM.

Yuli compila, ejecuta, prueba y depura con las herramientas de tu proyecto. Detener un build, un log o una prueba termina todo el árbol de procesos.

Herramientas de build

Herramienta Proyectos
Maven Java con pom.xml
Gradle Java y Kotlin con build.gradle
Ant Java con build.xml
npm JavaScript y TypeScript (detecta el gestor por el lockfile)
Cargo Rust

Yuli también entiende proyectos Eclipse sin migrar.

Toolchains

Yuli detecta el JDK, Maven y Gradle, ofrece descargar los que falten y muestra su estado. Se configuran en Proyecto → Build, ejecución y depuración…: variables de entorno, opciones de la VM, perfiles de Spring, SDK, Maven, Gradle y guardado.

Panel Maven / Gradle / Ant

En el panel inferior (Alt+7): filtro, perfiles como chips, las fases del ciclo de vida en una franja y el resto de tareas en tarjetas por grupo.

Ejecutar

Acción Atajo
Ejecutar la última configuración Shift+F10
Depurar la última configuración Shift+F9
Detener la ejecución Ctrl+F2
Construir proyecto Ctrl+F9
Ejecutar todos los tests Ctrl+Shift+F10
Ejecutar tests con cobertura Ctrl+Shift+F11

Configuraciones de ejecución

Tipos: build, ejecución, pruebas, limpieza, cobertura, empaquetado, comando propio y script de package.json. Tienen historial.

La consola

En el panel Ejecución, cada línea de stack trace del proyecto, cada error de JSP y cada Archivo.java:42 lleva al archivo y la línea. Filtra por nivel, por paquete o logger, o por Mi código (solo lo que viene del proyecto).

Servidores de aplicaciones

En Proyecto → Estructura del proyecto… → Servidores:

Servidor Notas
Tomcat Recarga el contexto al actualizar clases.
Jetty —
JBoss / WildFly —
WebLogic Dominio en modo desarrollo.
  • Despliegue exploded: JSP, HTML, CSS, JS y .properties llegan al servidor al guardar, sin redesplegar. Actualizar copia las clases recompiladas.
  • Cada servidor corre con su propia configuración dentro del proyecto, con puertos propios.
  • Arranca en ejecución o en depuración; el depurador se conecta solo.
  • Avisa si la app usa javax en un servidor jakarta, o al revés.
  • Las APIs del servidor (Servlet, JSP) entran en el classpath del editor.

Depurar

Lenguaje Depurador
Java y JVM Cliente JDWP nativo
Node.js Chrome DevTools Protocol (CDP)
Oracle PL/SQL DBMS_DEBUG de Oracle

Funciones

  • Árbol de variables e inspección de objetos, con valores en línea sobre el código.
  • Valores legibles: un objeto se ve como Owner{id=3, firstName="George", …}, una fecha como 2026-10-15, una colección con su tamaño.
  • Breakpoints condicionales, por conteo, logpoints y de excepción.
  • Evaluador de expresiones y cambio de valores en caliente.
  • Depuración de pruebas.

Pasos

Acción Atajo
Continuar F9
Siguiente línea (step over) F8
Entrar, solo tu código (step into) F7
Forzar entrada Alt+Shift+F7
Salir del método Shift+F8
Recargar clases modificadas (hot swap) Ctrl+Alt+F10

Hot swap

Recompila con la herramienta del proyecto y redefine las clases cambiadas durante la sesión de depuración, sin reiniciar.

PL/SQL

Para depurar en Oracle, el usuario necesita el privilegio DEBUG CONNECT SESSION y los objetos deben estar compilados con COMPILE DEBUG.

Diagnóstico de la JVM

El panel JVM (en «Más» del panel inferior) se conecta a cualquier proceso Java local.

Herramienta Qué hace
Volcado de hilos Agrupa por estado y resalta bloqueos e interbloqueos.
Histograma de memoria Memoria por clase. Al repetirlo, muestra qué creció (fugas).
Volcado de heap Guarda un .hprof para Eclipse MAT o VisualVM.
Perfilar CPU y memoria Con Flight Recorder: métodos más costosos, árbol de llamadas, asignaciones y GC. Si la JVM no lo admite, perfila por muestreo de hilos.

Pestañas: CPU, Memoria, Asignaciones e Hilos. El filtro Solo código del proyecto deja lo tuyo, y los marcos del proyecto llevan a la línea exacta.

Pruebas y cobertura

  • El explorador de pruebas ejecuta y reporta resultados en el panel Tests.
  • La cobertura se ve en el margen del editor: cubierto, no cubierto y parcial.
  • En Gradle, la cobertura se genera sin tocar el build, incluso en proyectos multimódulo.

Con el agente

Pide «compila, prueba y arranca» y el agente usa yuli_verify: build completo, todas las pruebas y un arranque con el perfil por defecto. Si la aplicación no arranca por una variable de entorno o un perfil, el agente puede revisarlo y pedirte solo los valores secretos.