English
Instant Developer Foundation Documentazione
  • Approfondimenti
  • IDE
  • Debug delle applicazioni
  • Debug step-by-step

Controllo della sessione di debug

copia link

Attivazione del debug step-by-step

Per attivare una sessione di debug step-by-step è sufficiente selezionare nell'albero l'applicazione desiderata ed utilizzare il comando di menù Debug - Avvia. Per default a questo comando è assegnato il tasto funzione F7; è anche possibile usare il pulsante corrispondente nella toolbar di debug.

A seguito di questo comando, le azioni che vengono eseguite sono le seguenti.

Ambiente Java

  • Vengono chiusi eventuali browser aperti.
  • L'applicazione viene ricompilata se necessario.
  • Viene controllato se un eventuale "proxy" era già in esecuzione e nel caso viene terminato.
  • Si controlla se Tomcat è già in esecuzione e nel caso viene terminato.
  • Tomcat viene nuovamente lanciato in modalità di debug tramite il comando "catalina jdpa start", si attende che il processo parta.
  • Viene lanciato il "proxy" che connette Instant Developer con la virtual machine di Tomcat e si impostano i breakpoint già conosciuti.
  • Viene aperto un browser in modo da poter utilizzare l'applicazione.
  • Instant Developer mostra le viste per la gestione dei breakpoint, dei watch e dello stacktrace.

Impostazione di breakpoint

E' possibile impostare breakpoint selezionando uno statement o un blocco di controllo nel visual code editor ed utilizzando il comando di menù Debug - Imposta/Rimuovi Breakpoint (tasto F9). I breakpoint impostati verranno evidenziati nel codice tramite un icona circolare rossa ad inizio riga. E' possibile visualizzare l'elenco dei breakpoint impostati tramite il comando Debug - Lista Breakpoint che presenta la seguente lista.


Lista dei breakpoint

Le prime tre colonne mostrano la posizione nel codice del breakpoint; facendo doppio click su di esse, verrà aperto nell'editor il punto di codice corrispondente.

Oltre alla posizione del breakpoint, sono visualizzate due colonne, denominate "Interrompi Al" ("Hit Count" nella versione inglese) e "Num. Passaggi" ("Actual Hit Count" in inglese). Facendo doppio click sulla prima colonna sarà possibile impostare il numero di volte che il breakpoint dovrà essere raggiunto prima di interrompere effettivamente l'esecuzione. Se il numero impostato è zero, allora il breakpoint interromperà sempre l'esecuzione quando raggiunto. La seconda colonna riporta il numero di volte che il breakpoint è stato raggiunto all'interno della sessione di debug corrente; facendo doppio click su di essa si azzererà tale contatore.

E' anche possibile disabilitare breakpoint senza cancellarli, cliccando sul l'icona di spunta nella prima colonna, oppure utilizzando il menù contestuale. Tutti i comandi agiscono sui breakpoint selezionati nella lista se non diversamente specificato. I breakpoint possono anche venire disabilitati automaticamente se Instant Developer non conosce la posizione nel file sorgente generato dell'oggetto su cui si vuole impostare il breakpoint oppure se l'oggetto stesso è commentato.

Infine l'impostazione, la rimozione, l'attivazione o la disattivazione dei breakpoint può avvenire in qualunque momento sia prima che durante la sessione di debug.

Interruzione dell'esecuzione

Se si desidera interrompere l'esecuzione immediatamente è possibile utilizzare il comando di menù Debug - Interrompi, oppure il corrispondente tasto nella toolbar del debug. Come nel caso di breakpoint, dopo l'interruzione il sistema mostra lo stack trace e evidenzia il punto di codice che stava per essere eseguito al momento dell'interruzione.

Siccome è possibile interrompere l'esecuzione in qualunque momento, non è detto che ci fosse alcun codice relativo all'applicazione in esecuzione. Il sistema di debug deve quindi analizzare tutti i thread attivi nell'application server per vedere se uno di essi sta eseguendo codice relativo all'applicazione in fase di debug e questa ricerca può durare anche alcuni secondi.

Ripresa dell'esecuzione

Se l'esecuzione è interrotta è possibile riprenderla con il comando di menù Debug - Avvia (tasto F7), oppure anche con il comando Edit - Build (tasto F5). Entrambi i comandi riavviamo la virtual machine che potrà così continuare l'esecuzione. Prima di riavviare la virtual machine si controlla se il progetto era stato modificato durante la sessione di debug e nel caso le classi cambiate vengono ricompilate e si tenta la ridefinizione al volo delle stesse. In questo modo è possibile correggere il codice senza dover fermare e riavviare la sessione di debug, tuttavia non tutte le modifiche sono accettate dalla virtual machine.

Terminazione della sessione di debug

Per concludere la sessione di debug è sufficiente utilizzare il comando di menù Debug - Termina, oppure utilizzare il corrispondente comando nella toolbar del debug. A seguito di questo comando, le azioni che vengono eseguite sono le seguenti.

Ambiente Java

  • Vengono chiusi eventuali browser aperti.
  • Viene inviato il comando di terminazione al proxy.
  • Il proxy termina Tomcat e poi si arresta.
  • Instant Developer nasconde le viste per la gestione dei breakpoint, dei watch e dello stacktrace.

Ultima modifica: 05/09/2008 / Validità: da 7.5.3400