N. Il JDT fornisce una serie di sofisticate funzioni inclusa una completa ricompilazione incrementale automatica, la valutazione di frammenti di codice, l'assistente al codice, gerarchie dei tipi e sostituzione del codice attivo. Tali funzioni richiedono il supporto speciale offerto dal compilatore del workbench Java (parte integrante del generatore incrementale di progetto del JDT), non disponibile nei compilatori Java standard.
Un progetto contiene esclusivamente file e cartelle. La nozione di pacchetto Java viene introdotta mediante il percorso classi di un progetto Java (nell'interfaccia utente, la vista Esplora pacchetti presenta i pacchetti come definiti dal percorso classi). Suggerimento: se la struttura del pacchetto non è quella prevista, controllare il percorso classi. L'infrastruttura di ricerca Java rileva dichiarazioni e riferimenti di elementi Java solo sul percorso classi.
Una risorsa interna risiede in un progetto del workbench e viene quindi gestita dal workbench; come per altre risorse, il workbench può gestire le versioni di tali risorse interne. Una risorsa esterna non fa parte del workbench e può essere utilizzata solo per riferimento. Ad esempio, un JRE è spesso esterno e molto grande, e non è necessario associarlo ad un sistema VCM.
Ciascun progetto Java localizza i propri file di origine Java mediante una o più voci di tipo di origine sul percorso classi del progetto. Utilizzare cartelle di origine per organizzare in gruppi i pacchetti di un progetto esteso o per conservare il codice origine separato da altri file dello stesso progetto. Inoltre, utilizzare le cartelle di origine se sono presenti file (ad esempio, la documentazione) che non è necessario inserire nel percorso di generazione.
Le librerie sono memorizzate come file JAR contenenti file di classe binari (e probabilmente altre risorse). Tali file di classe binari forniscono informazioni di convalida su pacchetti, classi, metodi e campi. Queste informazioni sono sufficienti per la compilazione o l'esecuzione, ma sono molto meno complete rispetto al codice origine originale. Per rendere più semplice l'esame e il debug di librerie binarie, esiste un meccanismo per associare un file origine JAR (o ZIP) corrispondente a un file JAR binario.
Se il proprio progetto Java utilizza cartelle di origine, nel corso della compilazione dei file di origine del progetto, il compilatore Java copia risorse non Java nella cartella di output in modo che saranno disponibili sul percorso classi del programma in esecuzione. Per evitare che determinate risorse vengano copiate nel percorso di output, è possibile impostare un filtro delle risorse nelle preferenze del compilatore Java: Finestra > Preferenze > Java > Compilatore > Generazione
Utilizzare cartelle di origine e inserire tutte le risorse che non si desidera copiare nella cartella di output in una cartella separata che non sia inclusa nel percorso classi. Il filtro delle risorse può essere impostato nelle preferenze del compilatore Java: Finestra > Preferenze > Java > Compilatore > Generazione ad esempio come *.doc.
Non è necessario farlo. I file nella cartella principale di una cartella di origine o di un progetto sono considerati come inseriti nel pacchetto predefinito. In effetti, ogni cartella di origine ha la capacità di contenere un frammento del pacchetto predefinito.
Il refactoring effettua trasformazioni del programma conservandone il comportamento. JDT supporta una serie di trasformazioni descritte nella pubblicazione di Martin Fowler Refactoring: Improving the Design of Existing Code, Addison Wesley 1999.
Per localizzare l'elemento Java che corrisponde a un intervallo di codice origine con l'aiuto del compilatore.
Le informazioni sul programma Java sono indipendenti dal generatore Java. Esse vengono automaticamente aggiornate quando si effettuano modifiche di risorse o operazioni Java. In particolare, tutte le funzionalità offerte dalla strumentazione Java (ad esempio le gerarchie dei tipi, l'Assistente al codice, la ricerca) continueranno ad essere perfettamente eseguite quando la funzione di generazione automatica è disattivata. Ad esempio, quando si effettua un refactoring che richiede la disattivazione dei generatori, è ancora possibile utilizzare l'Assistente al codice, che rifletterà le ultime modifiche apportate (non ancora sottoposte a generazione). Per le operazioni diverse dall'avvio di programmi (ossia esecuzione e debug), la sola funzionalità che richiede il generatore Java è la valutazione di frammenti di codice.
Quando il workbench viene chiuso, il generatore incrementale di progetto Java salva il proprio stato interno in un file. Alla prima generazione dopo la riapertura del progetto, il generatore incrementale di progetto Java ripristinerà il proprio stato interno. Quando il file è molto grande, si può verificare un ritardo inusuale durante la generazione.
Verificare che il proprio percorso classi di generazione sia impostato in modo corretto. L'impostazione del percorso classi di generazione corretto rappresenta un'importante attività durante lo sviluppo Java. Senza il percorso di generazione corretto, non sarà possibile compilare il codice. Inoltre, non sarà possibile effettuare la ricerca o l'esame delle gerarchie dei tipi per gli elementi Java.
Deselezionare la casella di controllo Genera automaticamente dalla pagina delle preferenze
Generale > Spazio di lavoro.
Quando si desidera eseguire la creazione, premere Ctrl+B oppure scegliere Progetto > Genera tutto dalla barra dei menu.
Suggerimento: quando si disattiva la "compilazione automatica" e si esegue la generazione manualmente, è possibile selezionare la casella di controllo Salva automaticamente prima della generazione nella pagina delle preferenze
Generale > Spazio di lavoro.
Sulla barra degli strumenti si trova un pulsante Mostra solo origine dell'elemento selezionato - tutto ciò che occorre fare è deselezionarlo.
Sì, per creare cartelle di origine nidificate possono essere utilizzati i filtri di esclusione.
Sì, basta selezionare la casella di controllo Consenti cartelle di output per le cartelle di origine nella pagina delle proprietà Percorso di generazione Java > Origine del progetto Java.
Sì, è possibile creare una cartella collegata che faccia riferimento al percorso desiderato e utilizzare quella cartella come cartella di origine o di output nel progetto Java.