Tips and Tricks (JDT)

Modifica Refactoring Navigazione Ricerca Viste Varie Debug

Modifica origine

Assistente ai contenuti L'assistente ai contenuti fornisce un elenco di completamenti consigliati per le stringhe immesse parzialmente. Nell'editor Java premere Ctrl+Spazio o richiamare Modifica > Assistente ai contenuti.

Finestra di dialogo di selezione Assistente ai contenuti

Assistente ai contenuti nei commenti Javadoc L'assistente ai contenuti è disponibile anche nei commenti Javadoc.

Assistente ai contenuti per i commenti Javadoc

Suppress types in content assist To exclude certain types from appearing in content assist, use the type filter feature configured on the Opens the type filter preference page Java > Appearance > Type Filters preference page. Types matching one of these filter patterns will not appear in the Open Type dialog and will not be available to content assist, quick fix and organize imports. Questi filtri non influenzano le viste Esplora pacchetti e Gerarchia tipi.

Pagina delle preferenze Immetti filtri

Assistente ai contenuti per i completamenti di nomi di variabili, parametri di metodo e campi È possibile utilizzare l'assistente ai contenuti per velocizzare la creazione di campi, parametri di metodo e variabili locali. Con il cursore posizionato dopo il nome tipo della dichiarazione, richiamare Modifica > Assistente ai contenuti oppure premere Ctrl+Spazio.

Suggerimenti per i nomi dei campi

If you use a name prefix or suffix for fields, local variables or method parameters, be sure to specify this in the Opens the code style preference page Java > Code Style preference page.

Parameter hints Con il cursore in un argomento del metodo, è possibile visualizzare un elenco di suggerimenti di parametro. Nell'editor Java, premere Ctrl+Maiusc+Spazio o richiamare Modifica > Suggerimenti di parametro.

Suggerimento a comparsa per i parametri

Assistente ai contenuti nelle classi anonime L'assistente ai contenuti consente inoltre di creare una classe anonima. Con il cursore posizionato dopo la parentesi di apertura della creazione di un'istanza di classe, richiamare Modifica > Assistente ai contenuti o premere Ctrl+Spazio.

Assistente ai contenuti per una classe anonima

Verrà creato il corpo della classe anonima interna, contenente tutti i metodi da implementare.
Toggle between inserting and replacing content assist Quando l'assistente al codice viene richiamato in un identificatore esistente, può sostituire l'identificatore con il completamento selezionato o effettuare un inserimento. The default behavior (overwrite or insert) is defined in the Opens the content assist preference page Java > Editor > Content Assist preference page.
È possibile alternare temporaneamente il funzionamento della finestra di dialogo di selezione dell'assistente ai contenuti premendo il tasto Ctrl durante la selezione del completamento.
Assistente ai contenuti incrementale Per impostazione predefinita, l'assistente ai contenuti inserisce i prefissi comuni automaticamente , allo stesso modo dell'espansione shell Unix. To change that behavior uncheck the setting on the Opens the content assist preference page Java > Editor > Content Assist preference page.
Customize content assist New in 3.2 Repeatedly invoking content assist (Ctrl+Space) cycles through different proposal categories.

Content assist with new method template proposals

To configure which categories to show use the Opens the content assist preference page Java > Editor > Content Assist > Advanced preference page.

You can also assign separate key shortcuts to your favorite proposal categories.

Create getters and setters Per creare i metodi getter e setter per un campo, selezionare la dichiarazione del campo e richiamare Origine > Genera Getter e Setter.

Finestra di dialogo Generazione metodi getter e setter

If you use a name prefix or suffix be sure to specify this in the Opens the code style preference page Java > Code Style preference page.
Use content assist to create getter and setters Un altro modo per creare metodi getter e setter consiste nell'utilizzare l'assistente ai contenuti. Posizionare il cursore nel corpo del tipo tra i membri e premere Ctrl+Spazio per richiamare le proposte per la creazione di un metodo getter o setter.
Content assist for creating a setter
Delete getters and setters together with a field Quando si elimina un campo da una vista, Eclipse propone l'eliminazione dei relativi metodi getter e setter. If you use a name prefix or suffix for fields, be sure to specify this in the Opens the code style preference page Java > Code Style preference page.
Creazione di metodi delegati To create a delegate method for a field select the field's declaration and invoke Source > Generate Delegate Methods. I metodi selezionati vengono aggiunti al tipo contenente una chiamata in uscita per i metodi delegati. Di seguito viene riportato un esempio di metodo delegato:
Delegate method example
Create hashCode() and equals()
New in 3.2
To create the methods hashCode() and equals() invoke Source > Generate hashCode() and equals().

Generate hashCode() and equals() dialog

Utilizzo dei modelli per creare un metodo You can define a new template that contains a method stub using the Opens the editor template preference page Java > Editor > Templates preference page. I modelli vengono visualizzati insieme alle proposte dell'assistente ai contenuti (Ctrl+Spazio).
I modelli esistenti sono 'private_method', 'public_method', 'protected_method' ed altri.
Utilizzare il tasto Tab per spostarsi tra i valori da immettere (tipo di ritorno, nome e argomenti).

Assistente ai contenuti con nuove proposte di modelli metodo

Utilizzo della Correzione rapida per creare un nuovo metodo Richiamare il metodo e utilizzare Correzione rapida (Ctrl+1) per creare il metodo.

Correzione rapida 'Crea metodo'

Utilizzo della correzione rapida per modificare la firma di un metodo Aggiungere un argomento a un richiamo del metodo in un sito delle chiamate. Utilizzare Correzione rapida (Ctrl+1) per aggiungere il parametri necessari nella dichiarazione del metodo.

Correzione rapida 'Modifica firma'

Utilizzo dell'assistente ai contenuti per creare uno stub del costruttore At the location where you want to add the new constructor, use content assist after typing the first letters of the constructor name.
Create constructor with content assist
Creazione di nuovi campi dai parametri Si desidera creare nuovi campi per memorizzare gli argomenti trasmessi nel costruttore? Utilizzare l'Assistente rapido (Ctrl + 1) su un parametro per creare l'assegnazione e la dichiarazione del campo e consentire ad Eclipse di proporre un nome in base alle preferenze Stile codice.
Assistente rapido 'Assegna parametro a un nuovo campo'
Utilizzo dell'Assistente ai contenuti per sostituire un metodo Richiamare l'Assistente ai contenuti (Ctrl+Spazio) nel corpo del tipo nel percorso cui il metodo deve essere aggiunto. L'assistente ai contenuti offrirà tutti i metodi che possono essere sostituiti. Verrà creato un corpo del metodo per il metodo scelto.

Assistente ai contenuti 'Sostituzione metodo'

Utilizzo della Correzione rapida per aggiungere metodi non implementati Per implementare una nuova interfaccia, aggiungere prima la dichiarazione 'implements' al tipo. Senza necessità di salvataggio o generazione, l'editor Java sottolineerà il tipo per segnare la mancanza di metodi e mostrerà la lampadina della correzione rapida. Fare clic sulla lampadina o premere Ctrl+1 (Modifica > Correzione rapida) per scegliere tra l'aggiunta dei metodi implementati o la creazione di una classe astratta.

Correzione rapida che offre una proposta 'Aggiungi metodi non implementati'

Sostituzione di un metodo di una classe base Per creare un metodo che sostituisca un altro metodo di una classe di base:
Select the type where the methods should be added and invoke Source > Override/Implement Methods. Si apre una finestra di dialogo che consente di scegliere i metodi da sostituire.

'Override/Implement method' dialog

Create a type from an example snippet
New in 3.2
You can paste a snippet of code containing a Java type directly into a package or source folder to create a new compilation unit. For example select and copy this source code
package pack;
public class HelloWorld {
    public static void main(String[] args) {
        System.out.println("Hello World");
    }
}
then select a source folder in the Package Explorer use Ctrl+V (Edit > Paste). This automatically creates a new package 'pack' and file 'HelloWorld.java' with the copied content.
Rename in fileTo quickly do a rename that doesn't require full analysis of dependencies in other files, use the 'Rename in file' Quick Assist. Nell'editor Java, posizionare il cursore su un identificatore di variabile, metodo o tipo e premere Ctrl+1 (Modifica > Correzione rapida)
L'editor passa alla modalità di modifica collegata (come i modelli) e la modifica dell'identificatore modifica contemporaneamente tutti gli altri riferimenti a quella variabile, metodo o tipo.

Modifica di più  implementatori utilizzando la correzione rapida 'ridenominazione locale'

You can also use the direct shortcut Ctrl+2 R. Use the Opens keys preference page General > Keys preference page to configure shortcuts (in the 'Source' category).
Utilizzo della Correzione rapida per gestire le eccezioni La gestione delle eccezioni thrown è semplice. Le eccezioni non gestite vengono rilevate durante la digitazione e contrassegnate con una riga rossa nell'editor.
  • Fare clic sulla lampadina o premere Ctrl+1 per racchiudere la chiamata in un blocco try/catch. If you want to include more statements in the try block, select the statements and use Source > Surround With > Try/catch Block. You can also select individual statements by using Edit > Expand Selection To and selecting Enclosing, Next or Previous.
  • Se la chiamata è già racchiusa in un blocco try, la Correzione rapida suggerirà di aggiungere il blocco catch al blocco esistente.
  • Se non si desidera gestire l'eccezione, lasciare che la Correzione rapida aggiunga una nuova eccezione thrown alla dichiarazione del metodo di inclusione

Proposte di correzione rapida 'Eccezione non rilevata'

At any time, you can convert a catch block to a thrown exception. Utilizzare Ctrl+1 (Modifica > Correzione rapida) in un blocco catch.

Assistente rapido 'Sostituisci proposizione catch con throws'

Immissioni di assegnazioni ridotte Anziché immettere un'assegnazione, iniziare con l'espressione che verrà assegnata.

Assistente rapido 'Assegna l'istruzione a una nuova variabile locale'

Utilizzare ora Ctrl+1 (Modifica > Correzione rapida) e scegliere 'Assegna l'istruzione a una nuova variabile locale'; l'assistente rapido individuerà un nome per la variabile.
Assegnazione dell'assistente rapido
Meno lavoro con le espressioni cast Non impiegare molto tempo digitando i cast. Ignorarli e utilizzare l'assistente rapido per aggiungerli dopo aver terminato l'istruzione.

Ad esempio per le assegnazioni:
Aggiungere cast nell'assegnazione
Or for method arguments:
Aggiungere cast per gli argomenti del metodo
Or for method call targets:
Aggiungere cast nelle destinazioni delle chiamate ai metodi

Assegnazione di un'espressione cast
Dopo una verifica di 'instanceof', è molto comune sottoporre a cast l'espressione ed assegnarla ad una nuova variabile locale. Richiamare l'Assistente rapido (Ctrl+1) sulla parola chiave 'instanceof':
'Introduzione nuova locale con tipo sottoposto a cast'
Altri assistenti rapidi
Per un elenco completo delle trasformazioni di codice disponibili, fare riferimento alla pagina Assistente rapido. Tra le altre vi sono:
  • Istruzioni Invert if
  • Converti 'switch' in 'if-else'
  • Sostituisci 'if-else' con condizionale
    ...e molte altre
Facendo clic qui verrà visualizzato l'elenco completo delle correzioni rapide.
Tasti di accesso rapido per l'assistente e le correzioni rapidi.
Alcuni degli assistenti rapidi più comuni come Rinomina in file e Assegna alla locale possono essere richiamati direttamente con Ctrl+2 R e Ctrl+2 L. Check the Opens keys preference page General > Keys preference page for more quick fixes that support direct invocation.

Pagina delle preferenze per i tasti con tasti di accesso rapido all'assistente rapido

Racchiudere le righe To surround statements with an if / while / for statement or a block, select the lines to surround and invoke Source > Surround With or press Alt+Shift+Z.

Assistente rapido 'Racchiudi nei modelli'

The entries in the menu are derived from the normal editor templates: All templates that contain the variable ${line_selection} will show up in the menu.

Templates can be configured on the Opens the editor templates preference page Java > Editor > Templates preference page. Edit the corresponding templates to customize the resulting code or define your own surround-with templates.
Creazione di modelli propri To create your own templates, go to the Opens the editor templates preference page Java > Editor > Templates preference page and press the New button to create a template. For example, a template to iterate backwards in an array would look like this:

Template for an iterator

Content assist can insert argument names automatically You can have content assist insert argument names automatically on method completion. This behavior can be customized on the Opens the content assist preference page Java > Editor > Content Assist preference page (see the Fill argument names on completion checkbox.) Ad esempio, quando si seleziona la seconda voce,

content assist window

content assist will automatically insert argument names:

content assist inserted argument names

You can then use the Tab key to navigate between the inserted names.

Content assist can also guess argument names - based on their declared types. This can be configured by the Guess filled argument names checkbox on the Opens the content assist preference page Java > Editor > Content Assist preference page.

Inserire automaticamente argomenti tipo
Enabling Fill argument names on completion on the Opens the content assist preference page Java > Editor > Content Assist preference page is also useful when working with parameterized types in J2SE 5.0.
Content assist on a parameterized type
il risultato ottenuto sarà:
Content assist guessed and inserted type argument
Rimozione di istruzioni di limitazione To remove a surrounding statement or block, position the cursor at the opening or closing bracket and press Ctrl+1 (Edit > Quick Fix).

Assistente rapido 'Elimina istruzione di limitazione'

Com'è scritta questa parola? You can enable spell-checking support in the Java editor on the Opens the spelling preference page General > Editors > Text Editors > Spelling preference page. Gli errori di ortografia vengono visualizzati nell'editor Java e sono disponibili le correzioni rapide corrispondenti:

Un esempio di proposta di correzione

È possibile rendere disponibile il dizionario all'assistente ai contenuti. Tuttavia, attualmente non c'è nessun dizionario in Eclipse. Quanto richiesto è un elenco di parole separate da una nuova riga e le correzioni rapide consentono di aggiungere nuove parole al dizionario automaticamente. Sono accettati contributi ai dizionari.

Selezioni strutturate È possibile selezionare rapidamente il codice Java sintatticamente utilizzando la funzione Selezione strutturata.
Highlight the text and press Alt+Shift+Arrow Up or select Edit > Expand Selection To > Enclosing Element from the menu bar - the selection will be expanded to the smallest Java-syntax element that contains the selection. È possibile espandere ulteriormente la selezione richiamando di nuovo l'azione.
Ricerca della parentesi corrispondente To find a matching bracket select an opening or closing bracket and press Ctrl+Shift+P or select Navigate > Go To > Matching Bracket. È possibile anche fare doppio clic prima di una parentesi di apertura o di chiusura - viene selezionato il testo compreso tra le due parentesi.

Utilizzo del 'doppio clic' per selezionare il testo tra parentesi

Javadoc intelligente Immettere '/**' e premete Invio. Viene aggiunto automaticamente uno stub di commento Javadoc contenente i tag @param, @return e @exception standard.

Risultato di 'Javadoc intelligente'

The templates for the new comment can be configured in the Opens the code templates preference page Java > Code Style > Code Templates preference page.
Show Source of Selected Element Only Press the Show Source of Selected Element Only Show Source of Selected Element Only toolbar button to display a segmented view of the compilation unit. When enabled, the Java editor displays only the element (for example, a method) selected in the Outline or Hierarchy views. When disabled, the Java editor displays the entire compilation unit.
Utilizzo della cronologia locale per ritornare a un'edizione precedente di un metodo Ogni volta che si modifica un file, il contenuto precedente viene inserito nella cronologia locale. La strumentazione Java rende la cronologia locale disponibile per gli elementi Java, per cui è possibile ritornare a un'edizione precedente di un singolo metodo anziché dell'intero file.

Select an element (e.g. in the Outline view) and use Replace With > Local History to revert back to a previous edition of the element.

Finestra di dialogo per la sostituzione con la cronologia locale

Utilizzo della cronologia locale per ripristinare i metodi rimossi Ogni volta che si modifica un file, il contenuto precedente viene inserito nella cronologia locale. La strumentazione Java rende la cronologia locale disponibile per gli elementi Java, per cui è possibile ripristinare i metodi eliminati in modo selettivo.

Select a container (e.g. in the Outline view) and use Restore from Local History to restore any removed members.

Finestra di dialogo per il ripristino dalla cronologia locale

Generazione codice personalizzabile The Opens the code templates preference page Java > Code Style > Code Templates preference page allows you to customize generated code and comments in a similar way to normal templates. Questi modelli di codice vengono utilizzati ogniqualvolta viene generato il codice.

Code templates preference page

Since 3.1, it is possible to use project specific Code templates, that will also be shared in the team if your project is shared. Aprire le Proprietà del progetto per abilitare le impostazioni specifiche del progetto.
Creazione dei commenti nel codice Comments can be added explicitly with Source > Generate Element Comment (Alt+Shift+J) or automatically by various wizards, refactorings or quick fixes.
Configure the comment templates on the Opens the code templates preference page Java > Code Style > Code Templates preference page.
Enable or disable the automatic generation of comments either directly on the wizard (e.g. using 'Generate Comment' checkbox on the new Java type wizards) or by the 'Automatically add new comments for new methods and types' checkbox of the Opens the code stylepreference page Java > Code Style preference page.
Tutte queste impostazioni possono essere configurate per i progetti. Aprire le Proprietà del progetto per abilitare le impostazioni specifiche del progetto.
Ordinamento membri You can Sort Members of a Java compilation unit according to a category order defined in the Opens the member sort order preference page Java > Appearance > Members Sort Order preference page.
You'll find the action under Source > Sort Members.
Wrap strings Il ritorno a capo può essere applicato alle stringhe durante la digitazione. For example, if you have code like this:
String message= "This is a very long message.";

posizionare il segno di immissione dopo la parola "very" e premere Invio. Il codice verrà automaticamente modificato in:

String message= "This is a very" + 
           " long message.";

This behavior can be customized in the Opens the typing preference page Java > Editor > Typing preference page.

Immissione intelligente e relativo controllo Le funzioni di Immissione intelligente dell'editor Java rendono più semplici le operazioni quotidiane. You can configure them on the Opens the typing preference page Java > Editor > Typing preference page.

Pagina delle preferenze Immissione dell'editor Java

Se l'opzione Inserisci punti e virgola automaticamente nella posizione corretta è abilitata, digitando un punto e virgola il cursore viene posizionato automaticamente alla fine dell'istruzione. In tal modo si evita di dover spostare continuamente il cursore.
È possibile annullare questo posizionamento automatico premendo la barra spaziatrice.

Correggere il rientro codice premendo un tasto A useful feature is Source > Correct Indentation or Ctrl+I.
Select the code where the indents are incorrect and invoke the action.

If nothing is selected, the action indents the current line.

Menu veloci per le azioni di origine e refactoring È possibile accedere alle azioni di refactoring e di origine attraverso un menu rapido. Select the element to be manipulated in the Java editor or in a Java view and press Alt+Shift+S for the quick source menu, Alt+Shift+T for the quick refactoring menu and Alt+Shift+Z for the surround with menu.

Menu rapido di refactoring

Ricerca codici non utilizzati Il compilatore Java individua codici non raggiungibili e variabili, parametri, importazioni, tipi privati, metodi e campi non utilizzati. The setting is on the Opens the error/warning preference page Java > Compiler > Error/Warnings preference page (or set for an individual project using Project > Properties > Java Compiler > Error/Warnings).

Pagina delle preferenze Compilatore

These settings are also detected as you type, and a quick fix is offered to remove the unneeded code.
Gestione dei commenti Javadoc Il compilatore Java di Eclipse può elaborare commenti Javadoc. La ricerca riporta i riferimenti nei commenti doc e il refactoring aggiorna questi riferimenti. This feature is controlled from the Opens the Javadoc problems preference page Java > Compiler > Javadoc preference page (or set for an individual project using Project > Properties > Java Compiler > Javadoc).

Pagina delle preferenze Javadoc

Quando questa funzione è attivata, i commenti Javadoc errati vengono contrassegnati nell'editor Java e possono essere corretti utilizzando Modifica > Correzione rapida (Ctrl+1):

Problemi individuati in Javadoc

Eliminazione degli avvisi In J2SE 5.0 and later, you can suppress all optional compiler warnings using the SuppressWarnings annotation.
In this example, addAll() is marked as an unused method. Quick Fix (Ctrl+1) is used to add a SuppressWarnings annotation so that the warning will not be shown for this method.
Correzione rapida per aggiungere l'annotazione SuppressWarning
Clean Up Wizard
New in 3.2
The Clean Up Wizard helps fixing multiple problems at once and helps to establish a code style.
For instance, you can:
  • convert all for loops to enhanced for loops where possible.
  • mark all overriding methods in a whole project with an @Override annotation.
The wizard is also helpful when converting Java 1.4 compatible code to Java 5.0.

Picture of Cleanup wizard

Select a project, package, or file and use Source > Clean Up... to start this wizard.

Refactoring

Scripting of refactorings
New in 3.2
Most of the refactorings offered by JDT can not only be executed interactively, but also by a refactoring script.

Create a refactoring script from the refactoring history using Refactor > Create Script....

A refactoring script can then be applied later on an arbitrary workspace using Refactor > Apply Script....

Such refactoring scripts can be used in different scenarios such as automatic fixing of breaking API changes between software layers or providing patches with rich semantics.
Safe JAR file migration
New in 3.2
When exporting a JAR file from the workspace, the JAR Export Wizard offers the option to include refactoring information into the JAR file.

Use File > Export... and select JAR file. On the first page of the JAR Export Wizard, select Export refactorings for checked projects. Click on the link to select the refactorings to include.

Clients are then able to migrate an old version of the JAR file to a new one using the Refactor > Migrate JAR File... refactoring. This refactoring automatically updates all code which is dependent on the old version of the JAR file to use the new version of the JAR file.

Ricerca

Individuazione di variabili e del relativo accesso in lettura/scrittura È possibile individuare le variabili e visualizzare il loro stato di lettura/scrittura selezionando un identificatore (riferimenti variabile, metodo o tipo o dichiarazione) e richiamando Cerca > Ricorrenze nel file. Tutti i riferimenti di questo identificatore vengono contrassegnati nello stesso file. I risultati vengono visualizzati anche nella vista Ricerca, insieme alle icone che mostrano l'accesso in lettura o scrittura della variabile.

Accessi di lettura e scrittura a un campo

In alternativa, utilizzare la funzione Indica ricorrenze per evidenziare in maniera dinamica le ricorrenze. È possibile ricercare vari file utilizzando le funzioni di ricerca generali (Cerca > Riferimenti).

Ricerca di metodi con uno specifico tipo di ritorno To search for methods with a specific return type, use "* <return type>" as follows:
  • Aprire la finestra di dialogo di ricerca e fare clic sulla scheda Ricerca Java.
  • Immettere '*' e il tipo di ritorno, separati da uno spazio, nella stringa Cerca.
  • Selezionare la casella di controllo Maiuscole/minuscole.
  • Selezionare Metodo e Dichiarazioni e fare clic su Cerca.

Ricerca del metodo con un determinato tipo di ritorno

Filter search matches in Javadoc By default, Java Search finds references inside Java code and Javadoc. If you don't want to see the references inside Javadoc, you can filter these matches by enabling 'Filter Javadoc' in the view menu (triangle symbol) of the search view.
Filter potential search matches Potential matches occur when a compile-time problem prevents the search engine from completely resolving the match. Filter these matches with Filter Potential in the search view menu (triangle symbol).
Traccia delle sequenze di chiamate al metodo con la Gerarchia chiamate Use the Call Hierarchy to follow long or complex call chains without losing the original context: Just select a method and invoke Navigate > Open Call Hierarchy (Ctrl+Alt+H).

Vista Gerarchia chiamate

Navigazione codice e lettura

Apertura di una selezione nell'editor Java There are two ways that you can open an element from a reference in the Java editor.
  • Selezionare il riferimento nel codice e premere F3 (Esplora > Apri dichiarazione)
  • Hold Ctrl, move the mouse pointer over the reference, and click the hyperlink
Esplorazione con collegamenti ipertestuali
The hyperlink style navigation can be configured with the Support hyperlink style navigation checkbox in the Opens the text editors preference page General > Editors > Text Editors preference page.
Strutture interne Premere Ctrl+F3 nell'editor Java per visualizzare una struttura interna dell'elemento nella posizione corrente del cursore. In alternativa, premere Ctrl+O (Esplora > Struttura rapida) per far comparire una struttura del file di origine corrente.

Struttura interna

Le strutture interne mostrano i membri ereditati Premere Ctrl+O o Ctrl+F3 per aggiungere membri ereditati a una struttura interna aperta. I membri ereditati presentano un'etichetta grigia. Filtrare e ordinare la struttura con il menu nell'angolo in alto a destra.

Vista Struttura rapida

Gerarchia interna Find out which are the possible receivers of a virtual call using the Quick Type Hierarchy. Place the cursor inside the method call and press Ctrl+T (Navigate > Quick Type Hierarchy). La vista mostra tutti i tipi che implementano i metodo con una icona.

Vista Gerarchia rapida

Press Enter to open the corresponding method in an editor. Premere nuovamente Ctrl+T per passare alla gerarchia di supertipi.

Evidenziazione avanzata L'editor Java evidenzia il codice di origine in base alla relativa semantica (ad esempio: campi statici, variabili locali, richiami di metodi statici). Have a look at the various options on the Opens the syntax coloring preference page Java > Editor > Syntax Coloring preference page.

Un esempio di evidenziazione avanzata.

Regioni inizialmente incluse È possibile specificare le aree raggruppate per impostazione predefinita quando viene aperto l'editor. Have a look at the Opens the folding preference page Java > Editor > Folding preference page to customize this.

Pagina delle preferenze Raggruppamento

Indica ricorrenze Quando si utilizza l'editor, attivare l'opzione Indica ricorrenze nella barra degli strumenti (Immagine del pulsante della barra degli strumenti Indica ricorrenze ) oppure premere Alt+Maius+O. verrà visualizzato un file in cui la variabile, il metodo o il tipo sono indicati come riferimento.
Editor con ricorrenze contrassegnate 'info'
Selezionando un tipo di ritorno, vengono mostrati i punti di uscita del metodo. Selezionare un'eccezione per vedere dove è stata generata.
Editor con uscite del metodo contrassegnate
Selezionare una superclasse o un'interfaccia per visualizzare i metodi che sovrascrivono o implementando un metodo dal supertipo selezionato.
Fine tune 'mark occurrences' on the Opens the mark occurrence page Java > Editor > Mark Occurrences preference page.
Change the color for to marker on the Opens the annotations page General > Editors > Text Editors > Annotations preference page.
Passaggio al membro successivo/precedente Per passare rapidamente al metodo o campo successivo o precedente, utilizzare
Ctrl+Maiusc+Freccia su (Esplora > Vai a > Membro precedente) oppure Ctrl+Maiusc+Freccia giù (Esplora > Vai a > Membro successivo)
Controllo dell'esplorazione tra le note Utilizzare i pulsanti della barra degli strumenti Annotazione successiva/precedente oppure Esplora > Annotazione successiva (Ctrl+.) e Esplora > Annotazione precedente (Ctrl+,) per passare da una annotazione all'altra in un file di origine Java. Con i menu a discesa è possibile configurare le note che si desidera arrestare:

Menu a discesa Annotazione successiva/precedente.

Promemoria nel codice Java Quando si contrassegna un commento nel codice di origine Java con "TODO", il compilatore Java crea automaticamente un'attività corrispondente come promemoria. Aprendo l'attività, si ritorna al codice "TODO". Use the Opens the todo page Java > Compiler > Task Tags preference page to configure any other special tags (like "FIXME") that you'd like to track in the task list.

Tag di attività nell'editor e vista Attività

Suggerimenti nella finestra Apertura tipo
The Open Type dialog (Navigate > Open Type or toolbar button) helps you navigate to a type by its name.
  • To find types quickly, only type the capital letters of the type name: IOOBE finds IndexOutOfBoundsException
  • To see all types ending with a given suffix, e.g. all Tests, use *Test< to not see all types containing Test somewhere else in the type name.
Finestra Apertura tipo con la corrispondenza camel case
Descrizioni a comparsa permanenti È possibile aprire il testo da una descrizione a comparsa in una finestra scorrevole premendo F2 (Modifica > Mostra descrizione comandi). È possibile selezionare e copiare il contenuto da questa finestra.

Finestra con il contenuto di una descrizione a comparsa

Descrizioni a comparsa nell'editor Java È possibile utilizzare diverse descrizioni a comparsa nell'editor Java utilizzando i tasti del modificatore (Maiusc, Ctrl, Alt).
Quando si sposta il mouse su un identificatore nell'editor Java, per impostazione predefinita viene visualizzata una descrizione a comparsa con il Javadoc estratto dall'origine corrispondente di questo elemento. Tenendo premuto il tasto Ctrl viene visualizzato il codice di origine.

Descrizione a comparsa con il codice dell'elemento nella descrizione a comparsa

You can change this behavior and define the hovers for other modifier keys in the Opens the hovers page Java > Editor > Hovers preference page.
Firma dedotta metodo generico
You can use hover to show the inferred signature of a generic method.

Descrizione a comparsa che mostra la firma dedotta del metodo generico

Apertura e configurazione della documentazione Javadoc esterna Se si desidera aprire la documentazione Javadoc per un tipo, un metodo o un campo con Maiusc+F2 (Esplora > Apri Javadoc esterno), è necessario innanzitutto specificare i percorsi della documentazione per le librerie principali di elementi (JAR, cartella classi) o per il progetto (cartella di origine.
For libraries, open the build path page (Project > Properties > Java Build Path), go to the Libraries, and expand the node of the library where you can edit the 'Javadoc location' node. The documentation can be local on your file system in a folder or archive, or on a web server.

Configurazione del percorso Javadoc nella finestra di dialogo del percorso di generazione Java

Per i tipi, i metodi o i campi presenti nelle cartelle di origine, andare su (Progetto > Proprietà > Percorso Javadoc).

Viste Java

Organizing workspace with many projects Use Top Level Elements > Working Sets in the Package Explorer's view menu to enable a new mode that shows working sets as top level elements. Questa modalità rende più facile gestire gli spazi di lavoro contenenti molti progetti.

Esplora pacchetti in modalità Insieme di lavoro

Use Configure Working Sets from the Package Explorer's view menu to configure which working sets get shown. La finestra consente di creare nuovi insiemi di lavoro Java, definire gli insiemi visualizzati e in che ordine. Gli insiemi di lavoro possono anche essere redisposti direttamente in Esplora pacchetti utilizzando le funzioni di trascinamento e di copia e incolla.

Vista Dichiarazione The Declaration view ( Opens the Java Declaration view Window > Show View > Other... > Java > Declaration) shows the source of the element selected in the Java editor or in a Java view.

Vista Dichiarazione

Vista Javadoc There is a Javadoc view ( Opens the Javadoc view Window > Show View > Other... > Java > Javadoc) which shows the Javadoc of the element selected in the Java editor or in a Java view. La vista Javadoc utilizza il widget browser SWT per visualizzare l'HTML sulle piattaforme che lo supportano.

Vista Javadoc

Type hierarchy view and method implementations / definitions Per individuare i tipi di una gerarchia che sostituiscono un metodo, utilizzare la funzione 'Mostra i membri nella gerarchia'.
  • Selezionare il metodo desiderato e premere F4 (Esplora > Apri gerarchia tipi). Si apre la vista della gerarchia tipi sul tipo di dichiarazione del metodo.
  • Con il metodo selezionato nella vista Gerarchia, premere il pulsante della barra degli strumenti 'Blocca la visualizzazione e mostra i membri nella gerarchia'.
  • La vista Gerarchia mostra ora solo i tipi che implementano o definiscono il metodo 'bloccato'. You can for example see that isEmpty() is defined in List and implemented in ArrayList and Vector but not in AbstractList.

Blocca la visualizzazione e mostra i membri nella gerarchia

La vista Gerarchia tipi supporta il raggruppamento mediante la definizione dei tipi La vista relativa ai metodi della gerarchia tipi consente di ordinare i metodi del tipo selezionato mediante la definizione dei tipi. For example, for AbstractList you can see that it contains methods that were defined in Object, Collection and List:

Ordinamento dei membri per definizione tipi nella gerarchia tipi

Suggerimenti nella gerarchia tipi
  • Porre l'attenzione su un nuovo tipo della gerarchia tipi premendo F4 (Esplora > Apri gerarchia tipi) su un elemento o un nome selezionato.
  • È possibile aprire la vista Gerarchia non solo sui tipi ma anche sui pacchetti, le cartelle di origine, gli archivi JAR e i progetti Java.
  • È possibile trascinare un elemento nella vista Gerarchia per concentrarsi sull'elemento in questione.
  • È possibile modificare l'orientamento (da quello verticale, predefinito, all'orizzontale) della vista Gerarchia, utilizzando il pulsante della barra degli strumenti della vista.
Confronto strutturale dell'origine Java Un confronto strutturale dell'origine Java ignora l'ordine testuale degli elementi Java, quali metodi e campi, e mostra più chiaramente gli elementi che sono stati modificati, aggiunti o rimossi.
Per l'avvio di un confronto strutturale dei file Java, sono disponibili due opzioni:
  • Selezionare due unità di compilazione Java e scegliere Confronta con > Tra loro dal menu di scelta rapida della vista. Se i file presentano delle differenze, vengono aperti in un editor di confronto. Il riquadro superiore mostra gli elementi Java diversi, facendo doppio clic su uno degli elementi viene visualizzata l'origine dell'elemento nel riquadro inferiore.
  • In qualsiasi contesto venga eseguito un confronto di file (ad esempio una sincronizzazione CVS), un doppio clic su un file Java non solo consente di visualizzare il contenuto del file in un visualizzatore di confronto testi, ma esegue anche un confronto strutturale e apre un nuovo riquadro con i risultati.

Confronto strutturale dell'origine Java

Quando si esegue il confronto strutturale, è possibile anche ignorare i commenti e le modifiche di formattazione: attivare l'opzione per ignorare gli spazi dalla barra degli strumenti dell'editor di confronto o dal menu a discesa della vista Sincronizzazione CVS.
Confronto strutturale dei file delle proprietà Un confronto strutturale dei file delle proprietà Java (estensione .properties) ignora l'ordine testuale delle proprietà e mostra le proprietà che sono state modificate, aggiunte o rimosse.
Per l'avvio di un confronto strutturale dei file delle proprietà, sono disponibili due opzioni:
  • Selezionare due file in Esplora pacchetti o nel pannello di selezione e scegliere Confronta con > Tra loro dal menu di scelta rapida della vista.
  • In qualsiasi contesto venga eseguito un confronto di file (ad esempio una sincronizzazione CVS), un doppio clic su un file Java non solo consente di visualizzare il contenuto del file in un visualizzatore di confronto testi, ma esegue anche un confronto strutturale e apre un nuovo riquadro con i risultati.

Confronto strutturale dei file delle proprietà

Hierarchical vs. flat presentation of packages An option on the Java Packages (and Package Explorer) view menu allows you to change the way packages are displayed. Package Presentation > Hierarchical displays packages in a tree, with sub-packages below packages; Package Presentation > Flat displays them in the standard arrangement, as a flat list with all packages and sub-packages as siblings.
Layout senza effetti dei pacchetti Layout gerarchico dei pacchetti
Pacchetti logici La vista Pacchetti Java (prospettiva Esplorazione Java) unisce i pacchetti dello stesso nome presenti nelle cartelle di origine all'interno di un progetto. The screenshot shows the Packages view containing a logical package.

Prospettiva di esplorazione Java contenente un pacchetto logico

Compressione nomi pacchetti If your package names are very long, you can configure a compressed name that appears in the viewers. Configuration of the compression pattern is done in the Opens the Appearance preference page Java > Appearance preference page.

Configurazione dei modelli di compressione nella pagina delle preferenze dell'aspetto Java

Utilizzando questo esempio, i pacchetti sono visualizzati come segue:

Nomi pacchetti compressi

Manipulating the Java build path directly in the Package Explorer Instead of manipulating the Java Build path on Project > Properties > Java Build Path, use the actions in the Package Explorer's context menu.
Ad esempio, è possibile aggiungere nuove cartelle di origine, archivi e librerie al percorso di generazione o escludere file e cartelle da una cartella di origine.

Build path context menu

Grouping Java problems
New in 3.2
Configure the Problems view to group Java problems into categories with Group by > Java Problem Type in the view menu.

picture of Problems view with grouped problems

You can control if a configurable error is intended to be fatal or not on the Opens the Building preference page Java > Compiler > Building preference page.
Java type indicator
New in 3.2
Enable the Java Type Indicator on the Opens the Label Decoration preference page General > Appearance > Label Decoration preference page to find out what the first type in a compilation unit or class file is. An adornment is shown for interfaces, annotations, and enums, while an ordinary class stays undecorated.

Picture of Java Type Indicator Label Decorator

Varie

Project specific preferences All code style and compiler options can be defined per project.
Open the project property pages with Project > Properties on a project or use the link on the workspace preferences (e.g. the Opens the Code Style preference page Java > Code Style preference page) to open a project property page and enable project specific settings.

Project property page with 'Enable project specific settings' checkbox

Le impostazioni specifiche del progetto sono archiviate in un file di configurazione interno al progetto (nella cartella '.settings'). Quando si condivide un progetto nel team, i membri del team otterranno queste impostazioni specifiche del progetto.
Regole di accesso
Le regole di accesso consentono di rafforzare le regole API per i tipi dalle librerie indicate come riferimento. Nella pagina Percorso di generazione Java (Progetto > Proprietà > Percorso di generazione Java) modificare il nodo 'Regole di accesso' disponibile nei progetti indicati come riferimento, archivi, cartelle classi e librerie.
I pacchetti o i tipi in questi riferimenti vengono classificati come:
  • Accessibile
  • Sconsigliato
  • Proibito
According to the settings on the Opens the Error/Warnings preference page Java > Compiler > Errors/Warnings preference page, the compiler will mark discouraged and forbidden references with warning or errors.

Finestra Configurazione regole di accesso

JUnit Selezionare un metodo di verifica JUnit in una vista e scegliere Esegui > Verifica JUnit dal menu di scelta rapida oppure Esegui > Esegui come > Verifica JUnit dal menu principale. Viene creata una configurazione di avvio per eseguire la verifica selezionata.
Occultamento della vista JUnit fino alla rilevazione di errori o malfunzionamenti You can configure the JUnit view to only open when there are errors or failures. In questo modo, la vista può essere impostata come una vista ad accesso rapido, che non viene mai visualizzata in assenza di verifiche non riuscite. Se nelle verifiche non vengono rilevati problemi, durante l'esecuzione viene visualizzata l'icona In esecuzione (il numero dei quadratini verdi aumenta ad indicare l'avanzamento) e alla fine dell'esecuzione viene visualizzata l'icona Esecuzione completata. Se, tuttavia, vengono rilevati errori o malfunzionamenti, viene visualizzata l'icona Rilevato malfunzionamento o errore (oppure, se le verifiche sono state completate, l'icona Esecuzione completata con malfunzionamento o errore) e la vista JUnit viene visualizzata.
Assistente ai contenuti nei campi delle finestra di dialogo Content Assist (Ctrl+Space) is also available in input fields of various Java dialogs. Look for a small light bulb icon beside the field when it has focus.

Finestra di dialogo Nuova classe

Smart caret positioning in dialogs showing Java names
New in 3.2
Text fields for editing Java names support smart caret positioning. Use Ctrl+Left and Ctrl+Right to stop at camel case boundaries inside a name. Use Ctrl+Shift+Left and Ctrl+Shift+Right to extend the selection in small steps. Use Ctrl+Delete to delete the next and Ctrl+Backspace to delete the previous part of a name.

Smart caret positioning in dialog
Ctrl+Right:
Smart caret positioning in dialog
Ctrl+Shift+Right:
Smart caret positioning in dialog
write "Equal":
Smart caret positioning in dialog
Ctrl+Delete:
Smart caret positioning in dialog
write "To":
Smart caret positioning in dialog
Definizione prefissi o suffissi per campi, parametri e variabili locali You can configure the prefix or suffix for fields, static fields, parameters, and local variables. These settings on the Opens the Code Style preference page Java > Code Style preference page are used in content assist, quick fix, and refactoring whenever a variable name is computed.

Convenzioni nomi nella pagina delle preferenze Stile codice

Organizzazione delle importazioni su più di singoli file You can invoke Source > Organize Imports on sets of compilation units, packages, source folders or Java projects.
Formattazione di più di un file Select all Java files to format and choose Source > Format to format them all. L'azione di formattazione è disponibile anche su pacchetti, cartelle di origine e progetti Java.
Utilizzo di un JRE specifico per un progetto When creating new projects, the JRE that is added by default is the one selected in the Opens the Installed JREs preference page Java > Installed JREs preference page. Per impostare un JRE specifico di un progetto, aprire la pagina delle proprietà del percorso di generazione Java del progetto (Progetto > Proprietà > Percorso di generazione Java) quindi la pagina Librerie, selezionare 'Libreria di sistema JRE' e premere Modifica. In the 'Edit Library' dialog you can select either the default JRE, a project specific JRE or an Execution Environment to add to new projects.

Modifica della libreria di sistema JRE

Use drag and drop Drag and Drop is a handy replacement of Edit > Cut and Edit > Paste respective Edit > Copy and Edit > Paste. Hold down the Ctrl key down while dragging to change from move to copy.

Important to know:

  • If you move Java compilation units between packages by Drag & Drop, this will behave like a refactoring move - all missing imports will be added and references updated
  • If you drag and drop source elements like types or methods, this will only copy or move the corresponding source code - no references will be updated
Tag di obsolescenza diffusa The Java compiler can be configured to diagnose deprecation using options on the Opens the Error/Warnings preference page Java > Compiler > Errors/Warnings preference page.

Pagina delle preferenze Compilatore

Utilizzando questa configurazione, il risultato sarà:

I.java

X.java

Y.java

Se non è possibile correggere l'utilizzo di un frammento obsoleto, si consiglia di contrassegnare il metodo di inclusione, il campo o il tipo come obsoleto. In questo modo, si è informati di aver sostituito un frammento obsoleto e l'indicatore di obsolescenza viene diffuso ad altri elementi dipendenti.

X.java

Y.java

Ripristino da incongruenze anomale Nel caso remoto di una disfunzione, JDT potrebbe rivelare alcune incongruenze, quali:
  • risultati mancanti in una Ricerca Java o Apertura tipo
  • elementi non validi in Esplora pacchetti

To bring JDT into a consistent state again, the following actions need to be performed in this exact order:
  1. Chiudere tutti i progetti utilizzando l'azione del menu Chiudi progetto
  2. Arrestare e riavviare Eclipse
  3. Aprire tutti i progetti utilizzando l'azione del menu Apri progetto
  4. Attivare manualmente la cancellazione della generazione dell'intero spazio di lavoro (Progetto > Cancella...)

Debug

Avvio dal menu di scelta rapida

È possibile eseguire e sottoporre a debug applicazioni Java dal menu di scelta rapida. È possibile avviare un file di origine, pacchetto, metodo, tipo, ecc. scegliendo Esegui come (o Debug come) > Applicazione Java dal menu di scelta rapida in una vista o in un editor. Alternatively, you can use the Java application launch shortcut key binding (Alt+Shift+D, J). Le azioni di livello superiore Esegui come (o Debug come) sono anche sensibili alla selezione corrente o all'editor attivo.

Menu di scelta rapida con l'opzione di avvio

Valutazioni nel debugger

La valutazione dei frammenti è disponibile in una serie di punti nel debugger. Scegliendo Visualizza o Esamina dal menu di scelta rapida dell'editor o la vista Variabili, i risultati verranno mostrati in una finestra a comparsa e potranno essere inviati alle viste Visualizzazione o Espressioni.

Risultato di un'analisi in una finestra a comparsa

Visualizzazione della gestione in prospettive Non-debug

La vista Debug gestisce automaticamente le viste connesse in base alla selezione viste (visualizzando le viste Java per i frame dello stack Java e le viste C per i frame dello stack C, ad esempio). By default, this automatic view management only occurs in the Debug perspective, but you can enable it for other perspectives via the View Management preference page available from the Debug view toolbar pull down.

Variabili di ambiente

You can specify the environment used to launch Java applications via the Environment tab.

Scheda Ambiente nella finestra di dialogo della configurazione di avvio

Sostituzione stringhe

Variables are supported for many parameters of Java Application launch configurations. La maggior parte dei campi che supportano le variabili presentano il pulsante Variabili... come il programma o i campi degli argomenti VM. Il campo Tipo principale supporta le variabili; la variabile ${java_type_name} consente di creare una configurazione che eseguirà il tipo selezionato.

Scheda argomenti nella finestra Configurazione di avvio

Strutture logiche

L'opzione Strutture logiche sulla barra degli strumenti Vista Variabili presenta le strutture alternative per i tipi comuni. JDT fornisce le viste logiche per associazioni, raccolte e composti SWT. È possibile definire le strutture logiche per altri tipi dalla pagina delle preferenze Strutture logiche.

Vettore visualizzato come struttura logica nella vista Variabili

Argomenti VM predefiniti

Se si specificano spesso gli stessi argomenti di una determinata VM, è possibile configurare l'opzione Argomenti VM predefiniti nella pagina delle preferenze JRE installati. Questa azione è preferibile rispetto a specificare gli argomenti per ciascuna configurazione di avvio.

Pagina delle preferenze JRE con l'argomento predefinito specificato

Interrompi in 'main'

È possibile utilizzare l'opzione Interrompi in 'main' nella configurazione di avvio di un'applicazione Java per fare in modo che il programma venga arrestato alla prima riga eseguibile del metodo principale, quando si esegue il programma in modalità debug.

Scheda Principale con l'opzione Interrompi in main selezionata

Punti di interruzione condizionali È possibile utilizzare i punti di interruzione condizionali in Proprietà punto di interruzione... per controllare quando un punto di interruzione arresta realmente l'esecuzione. È possibile specificare se si desidera che il punto di interruzione arresti l'esecuzione solo quando la condizione è true o quando il valore della condizione cambia.

Editor condizione punto di interruzione nella finestra delle proprietà del punto di interruzione

Disabilitazione dei punti di interruzione

Se un punto di interruzione viene aggiunto e rimosso frequentemente nella stessa posizione, può essere utile disattivarlo quando non è necessario e attivarlo quando è necessario. È possibile far ciò utilizzando Disattiva punto di interruzione nel menu di scelta rapida del punto di interruzione oppure deselezionando il punto di interruzione nella Vista Punti di interruzione.

È anche possibile disattivare temporaneamente tutti i punti di interruzione utilizzando l'azione Ignora tutti i punti di interruzione nella barra degli strumenti Vista Punti di interruzione. In questo modo il debugger ignorerà tutti i punti di interruzione mantenendo abilitato il loro stato.

Azione Disattiva punto di interruzione nel menu di scelta rapida del righello

Modifica dei valori delle variabili

Quando un thread viene sospeso nel debugger, è possibile modificare i valori dei primitivi Java e delle stringhe nella vista Variabili. Dal menu di scelta rapida delle variabili, scegliere Cambia valore di variabile. You can also change the value by typing a new value into the Details pane and using the Assign Value action in the context menu (CTRL+S key binding).

Modifica valore variabile dal riquadro dei dettagli

Valori di variabili nelle descrizioni a comparsa Quando un thread è sospeso e il cursore viene posizionato su una variabile nell'editor Java, il valore di tale variabile viene visualizzato come descrizione a comparsa.

Descrizione a comparsa del valore della variabile nell'editor

Rilascia nel frame

Quando si passa attraverso il codice, è possibile che si proceda troppo rapidamente o che si oltrepassi involontariamente la riga desiderata. Anziché riavviare la sessione di debug, è possibile utilizzare l'azione Rilascia nel frame per tornare rapidamente all'inizio del metodo. Selezionare il frame dello stack corrispondente al metodo Java che si desidera riavviare e selezionare Rilascia nel frame dalla barra degli strumenti Vista Debug oppure dal menu di scelta rapida del frame dello stack. Il puntatore di istruzione corrente verrà reimpostato sulla prima istruzione eseguibile del metodo. Questa azione è valida anche per i frame dello stack non di livello superiore.

Si noti che la funzione Rilascia nel frame è disponibile solo quando si esegue il debug con una VM versione 1.4 o successiva o con la VM J9. Esistono alcune condizioni in cui una JVM non riesce a visualizzare i frame desiderati dallo stack. Ad esempio, è impossibile rilasciare nella parte inferiore del frame dello stack o in qualsiasi frame di un metodo nativo.

Sostituzione codice attivo Il debugger supporta la sostituzione codice attivo quando si esegue il debug con una VM versione 1.4 o successiva o con la VM J9. Questa funzione consente di apportare modifiche al codice durante il debug. Si noti che alcune modifiche, ad esempio quelle relative ai metodi nuovi o eliminati, alle variabili di classe o alle classi interne non possono essere sostituite poiché dipendono dal supporto fornito da una determinata VM.
Passaggio alla selezione

Il debugger Java consente di passare su un singolo metodo all'interno di una serie di chiamate di metodo concatenate o nidificate. Evidenziare il metodo su cui si desidera passare e selezionare Passa alla selezione dal menu di scelta rapida dell'editor Java.

Questa funzione è valida in punti differenti dalla riga correntemente in esecuzione. Try debugging to a breakpoint and step into a method a few lines below the current instruction pointer.

Passaggio alla selezione

Console pin and lock L'output visualizzato nella console può essere bloccato in uno specifico processo mediante l'azione Console pin nella barra degli strumenti vista Console. There's also a Scroll Lock action that stops the console from scrolling as new output is appended.
Creazione di elementi watch Un elemento watch è un'espressione della vista Espressioni il cui valore viene aggiornato con il debug. È possibile creare elementi watch dall'editor Java selezionando un'espressione o una variabile e scegliendo Watch dal relativo menu di scelta rapida o dal menu Esegui di livello superiore.
Punto di controllo

A watch point is a breakpoint that suspends execution whenever a specified field is accessed or modified. To set a watchpoint, select a field in the Outline view and choose Toggle Watchpoint from its context menu. Per configurare un punto di controllo, selezionare il punto di controllo nella vista Punti di interruzione e scegliere Proprietà... dal relativo menu di scelta rapida. Le proprietà più importanti per questo tipo di punto di interruzione sono contenute nelle caselle di controllo Accesso e Modifica che controllano il momento in cui il punto di interruzione può sospendere l'esecuzione.

Finestra di dialogo delle proprietà dei punti di controllo

Thread e controlli

Il debugger Java facoltativamente visualizza le informazioni di controllo nella vista Debug. Utilizzare l'azione Mostra controlli nella menu a discesa della vista Debug per mostrare i thread con blocchi e quelli in attesa di ricevere blocchi. I thread coinvolti in un deadlock vengono visualizzati in rosso.

Vista Debug che mostra cicli di deadlock

Filtri di analisi I filtri di analisi impediscono che il debug venga sospeso in classi e pacchetti specificati durante il passaggio nel codice. Step filters are established with the Opens the Step Filtering preference page Java > Debug > Step Filtering preference page. Quando l'opzione Utilizza filtri di avanzamento (sul menu e sulla barra degli strumenti di debug) è attiva, i filtri di avanzamento vengono applicati a tutte le azioni di avanzamento. Nella vista Debug, il pacchetto del frame di stack selezionato o il tipo di dichiarazione possono essere aggiunti rapidamente all'elenco dei filtri selezionando Tipo di filtro o Filtra pacchetti dal menu di scelta rapida del frame di stack.
Utilizzo delle bozze

Se si desidera utilizzare le API o provare un nuovo algoritmo, è spesso più semplice utilizzare una pagina di bozza Java che creare una nuova classe. Una pagina di bozza è un contenitore per frammenti casuali del codice che possono essere eseguiti in qualsiasi momento senza un contesto. To create a scrapbook page, create a new file with a .jpage extension (or use the Opens the New Scrapbook wizard New Scrapbook Page wizard). Enter whatever code you wish to execute and then select it. Esistono tre modi per eseguire il codice:

  • Execute the selected code and place the returned result in an inspect popup
  • Eseguire il codice selezionato e inserire il risultato direttamente nella pagina di bozza

    Pagina di bozza con il risultato

  • Eseguire il codice selezionato (e ignorare i risultati restituiti)

Queste azioni si trovano nella barra degli strumenti del workbench e nel menu di scelta rapida della pagina di bozza.

Modifica
delle configurazioni
di avvio
Tenendo premuto il tasto Ctrl ed eseguendo una selezione dal menu a discesa Esegui o Debug, si apre la configurazione di avvio associata per la modifica. La configurazione di avvio può essere aperta anche dai menu di scelta rapida associati alle voci della vista Debug.
Configurazioni di avvio preferite

Le configurazioni di avvio vengono visualizzate nei menu a discesa Esegui/Debug nell'ordine di avvio più recente. È possibile, tuttavia, forzare una configurazione di avvio affinché venga sempre visualizzata nella parte superiore dei menu a discesa, rendendo 'preferita' la configurazione. Utilizzare l'azione Organizza preferiti... dal menu a discesa appropriato per configurare le configurazioni di avvio preferite.

Programmi di formattazione dettagli

Nelle viste Variabili e Espressioni, il riquadro dei dettagli mostra una rappresentazione estesa della variabile attualmente selezionata. Per impostazione predefinita, questa rappresentazione estesa è il risultato della chiamata di toString() sull'oggetto selezionato, ma è possibile creare un programma di formattazione dettagli personalizzato che verrà utilizzato scegliendo Nuovo programma di formattazione dettagli dal menu di scelta rapida della variabile. Questo programma di formattazione dettagli verrà utilizzato per tutti gli oggetti dello stesso tipo. You can view and edit all detail formatters in the Opens the Detail Formatters preference page Java > Debug > Detail Formatters preference page.

Finestra di dialogo Programma di formattazione dettagli

Esecuzione di un codice con errori di compilazione

È possibile effettuare l'esecuzione e il debug di un codice non compilato correttamente. L'unica differenza tra l'esecuzione di un codice con e senza errori di compilazione sta nel fatto che se viene eseguita una riga di un codice con un errore di compilazione, si verifica una delle seguenti situazioni:

  • If the 'Suspend execution on compilation errors' preference on the Opens the Debug preference page Java > Debug preference page is set and you are debugging, the debug session will suspend as if a breakpoint had been hit. Se la VM utilizzata supporta la sostituzione codice attivo, è possibile correggere l'errore di compilazione e riprendere il debug
  • In caso contrario, l'esecuzione verrà terminata con un errore di 'compilazione non risolto'

È importante sottolineare che fino a quando il percorso di esecuzione evita le righe del codice con errori di compilazione, è possibile procedere all'esecuzione e al debug come in situazioni normali.

Ritorno a capo nella vista Variabili L'area dei dettagli delle viste Variabili e Espressioni del debugger supporta il ritorno a capo, disponibile nel menu a discesa della vista.

Azione Ritorno a capo nel menu a discesa della vista Variabili

Assistente al codice nel debugger

L'assistente al codice è disponibile in molti contesti diversi dalla scrittura del codice nell'editor Java:

  • Quando si immette una condizione di punto di interruzione
  • Nel riquadro Dettagli della vista Variabili & Espressioni
  • Quando si immette un frammento di codice del Programma di formattazione dettagli
  • Quando si immette un frammento di codice Struttura logica
  • Quando si immette codice nella pagina Bozza
  • Nella vista Visualizzazione
Dettagli sulla riga comandi La riga comandi utilizzata per avviare un programma in modalità esecuzione o debug può essere sempre visualizzata selezionando Proprietà dal menu di scelta rapida di un processo o di una destinazione di debug, anche se l'avvio è stato terminato.

Dettagli della riga comandi

Collegamenti ipertestuali della
traccia di stack

Le tracce di stack Java presenti nella console vengono visualizzate con collegamenti ipertestuali. Quando si posiziona il mouse su una riga di una traccia di stack, il puntatore assume l'aspetto di una mano. Premendo il pulsante del mouse, si apre il file di origine Java associato e il cursore viene posizionato sulla riga corrispondente. Premendo il pulsante del mouse sul nome dell'eccezione all'inizio della traccia stack, verrà creato un punto di interruzione dell'eccezione.

Tracce stack nella vista Console con collegamento ipertestuale