2011-12-08 17 views
11

Sto usando Eclipse IDE (versione Helios) Durante il debug in Eclipse, è possibile modificare l'origine e continuare il debugging ??Eclipse: modifica la sorgente e continua il debug

Ad esempio, ho questo file Durante il debug quando ho provato a modificare il valore a4 durante il debug del suo non riflettente ??

public class Tes { 

    public static void main(String args[]) { 
     int a4 = 15; 

     for (int i = 0; i < a4; i++) { 
      System.out.println(i); 
     } 

    } 
} 

risposta

8

Sì, è possibile modificare il sorgente e continuare il debug in Eclipse! Troverai informazioni dettagliate qui: Debugging with the Eclipse Platform (scorri verso il basso fino alla sezione Correzione bug con Hotswap: correzione al volo del codice).

Se si esegue Virtual Machine (JVM) V1.4 Java o superiore, Eclipse supporta una funzionalità denominata Hotswap Bug di fissaggio (non disponibile in JVM V1.3 o inferiore). Permette la modifica del codice sorgente durante una sessione di debugger , che è meglio di uscire dall'applicazione, cambiando il codice, ricompilando, quindi avviando un'altra sessione di debug . Per utilizzare questa funzione, è sufficiente modificare il codice nell'editor e riprendere il debug.

In alcuni casi la funzione non funziona. Per esempio. se apporti modifiche alla variabile a4 del metodo main, la JVM non sarà in grado di rimuovere tutti i frame dello stack che eseguono il vecchio codice dallo stack di chiamate. I dati del debugger saranno persi.

Per vedere la funzione JVM Hotswap Bug Fixing in azione, è sufficiente spostare il codice dal metodo main nella classe Test in un'altra classe. Ecco cosa voglio dire:

Hotswap Bug Fixing in Action

Ora è possibile modificare il codice al volo durante il debug nella classe MyObject. Divertiti!

EDIT: appena trovato una domanda simile a superuser.com: Debugging in Eclipse, how to run until a breakpoint

0

Se si vuole solo modificare il valore di a5 durante il debug la sua molto più facile che cambiare la fonte. È possibile impostare un nuovo valore nella vista delle variabili che è possibile visualizzare nella prospettiva di debug di Eclipse.

consultare il manuale here e here

1

Se vi capita di essere in esecuzione l'applicazione utilizzando una JVM 1.3 o versioni superiori, c'è un ultimo passo con il debugger ancora acceso: -> cambia la riga del problema - nel tuo caso "valore a4" e poi Salva il file, quindi premi il pulsante Riprendi per riavviare l'applicazione.

Questo salvataggio di quel particolare file java che è stato modificato durante il debug, farà in modo che la sessione continui il debug dall'inizio (Costruttore) del file con nuovi valori.

Questa modifica e il salvataggio possono essere effettuati n numero di volte e, una volta salvato, la sessione di debug riprenderà automaticamente dall'inizio di quel particolare file.

Problemi correlati