Documentație / IDE-ul

Rulare și depanare

Build cu Maven, Gradle, Ant, npm sau Cargo, servere de aplicații, depanatoare JDWP, CDP și PL/SQL, hot swap și diagnosticarea JVM.

Yuli compilează, rulează, testează și depanează cu uneltele proiectului tău. Oprirea unui build, a unui log sau a unui test încheie întregul arbore de procese.

Unelte de build

Unealtă Proiecte
Maven Java cu pom.xml
Gradle Java și Kotlin cu build.gradle
Ant Java cu build.xml
npm JavaScript și TypeScript (detectează managerul după lockfile)
Cargo Rust

Yuli înțelege și proiectele Eclipse fără migrare.

Toolchain-uri

Yuli detectează JDK-ul, Maven și Gradle, se oferă să descarce ce lipsește și le afișează starea. Se configurează în Proiect → Build, rulare și depanare…: variabile de mediu, opțiuni VM, profiluri Spring, SDK, Maven, Gradle și salvare.

Panoul Maven / Gradle / Ant

În panoul inferior (Alt+7): filtru, profiluri sub formă de chip-uri, fazele ciclului de viață pe o bandă și restul sarcinilor în carduri grupate.

Rulare

Acțiune Scurtătură
Rulează ultima configurație Shift+F10
Depanează ultima configurație Shift+F9
Oprește rularea Ctrl+F2
Compilează proiectul Ctrl+F9
Rulează toate testele Ctrl+Shift+F10
Rulează testele cu acoperire Ctrl+Shift+F11

Configurații de rulare

Tipuri: build, rulare, teste, curățare, acoperire, împachetare, comandă proprie și script din package.json. Au istoric.

Consola

În panoul Rulare, fiecare linie de stack trace a proiectului, fiecare eroare JSP și fiecare Archivo.java:42 duce la fișierul și linia respectivă. Filtrează după nivel, după pachet sau logger, ori după Codul meu (doar ce provine din proiect).

Servere de aplicații

În Proiect → Structura proiectului… → Servere:

Server Note
Tomcat Reîncarcă contextul la actualizarea claselor.
Jetty —
JBoss / WildFly —
WebLogic Domeniu în modul de dezvoltare.
  • Implementare exploded: JSP, HTML, CSS, JS și .properties ajung pe server la salvare, fără reimplementare. Actualizează copiază clasele recompilate.
  • Fiecare server rulează cu propria configurație în cadrul proiectului, cu porturi proprii.
  • Pornește în modul rulare sau depanare; depanatorul se conectează singur.
  • Te avertizează dacă aplicația folosește javax pe un server jakarta, sau invers.
  • API-urile serverului (Servlet, JSP) intră în classpath-ul editorului.

Depanare

Limbaj Depanator
Java și JVM Client JDWP nativ
Node.js Chrome DevTools Protocol (CDP)
Oracle PL/SQL DBMS_DEBUG de la Oracle

Funcții

  • Arbore de variabile și inspectarea obiectelor, cu valori afișate în linie peste cod.
  • Valori lizibile: un obiect apare ca Owner{id=3, firstName="George", …}, o dată ca 2026-10-15, o colecție cu dimensiunea ei.
  • Breakpoint-uri condiționale, cu numărare, logpoint-uri și de excepție.
  • Evaluator de expresii și modificarea valorilor din mers.
  • Depanarea testelor.

Pași

Acțiune Scurtătură
Continuă F9
Linia următoare (step over) F8
Intră, doar în codul tău (step into) F7
Forțează intrarea Alt+Shift+F7
Ieși din metodă Shift+F8
Reîncarcă clasele modificate (hot swap) Ctrl+Alt+F10

Hot swap

Recompilează cu unealta proiectului și redefinește clasele modificate în timpul sesiunii de depanare, fără repornire.

PL/SQL

Pentru depanarea în Oracle, utilizatorul are nevoie de privilegiul DEBUG CONNECT SESSION, iar obiectele trebuie compilate cu COMPILE DEBUG.

Diagnosticarea JVM

Panoul JVM (în „Mai mult” din panoul inferior) se conectează la orice proces Java local.

Unealtă Ce face
Dump de fire Grupează după stare și evidențiază blocajele și interblocajele.
Histogramă de memorie Memoria pe clasă. La repetare, arată ce a crescut (scurgeri).
Dump de heap Salvează un .hprof pentru Eclipse MAT sau VisualVM.
Profilează CPU și memoria Cu Flight Recorder: metodele cele mai costisitoare, arborele de apeluri, alocările și GC. Dacă JVM-ul nu îl acceptă, profilează prin eșantionarea firelor.

File: CPU, Memorie, Alocări și Fire de execuție. Filtrul Doar codul proiectului păstrează doar ce este al tău, iar cadrele din proiect duc la linia exactă.

Teste și acoperire

  • Exploratorul de teste rulează testele și raportează rezultatele în panoul Teste.
  • Acoperirea se vede în marginea editorului: acoperit, neacoperit și parțial.
  • În Gradle, acoperirea se generează fără a atinge build-ul, chiar și în proiectele multimodul.

Cu agentul

Cere „compilează, testează și pornește”, iar agentul folosește yuli_verify: build complet, toate testele și o pornire cu profilul implicit. Dacă aplicația nu pornește din cauza unei variabile de mediu sau a unui profil, agentul poate verifica problema și îți cere doar valorile secrete.