File di descrizione del progetto

Descrizione: quando nell'area di lavoro è creato un progetto, viene automaticamente generato un file di descrizione dello stesso.  Questo file ha lo scopo di rendere il progetto auto-descrittivo in modo che, dopo essere stato compresso o rilasciato su un server, possa essere correttamente ricreato in un'altra area di lavoro.  Il file è sempre denominato ".project" ed è posizionato come un membro diretto dell'area del contenuto del progetto.  Il nome del file è esposto attraverso il campo statico DESCRIPTION_FILE_NAME in org.eclipse.core.resources.IProjectDescription.

Il nome, la posizione e il contenuto di questo file fanno parte delle API dell'area di lavoro.  Conseguentemente, non possono essere modificati in modi che interrompano gli utenti esistenti del file.  E possibile, tuttavia, aggiungere ulteriori elementi e attributi al tag che potranno essere eventualmente in futuro aggiunti al file.  Per questo motivo, i client che leggono il contenuto del file di descrizione devono tollerare elementi ed attributi sconosciuti.

I client modificano, eliminano o sostituiscono il file di descrizione del progetto a proprio rischio.  I progetti, il cui file di descrizione non è valido o manca, generalmente non potranno essere utilizzati.  Se all'avvio di un'area di lavoro viene scoperto un file di descrizione invalido, il progetto viene chiuso e non potrà essere aperto finché il file di descrizione non verrà ripristinato.  L'area di lavoro generalmente non ripristinerà automaticamente un file di descrizione invalido o mancante.  Un'eccezione è costituita dalla generazione di file di descrizione del progetto mancanti quando viene salvata l'area di lavoro o vengono eseguite chiamate a IProject.setDescription.

Modificare il file di descrizione del progetto equivale generalmente a modificare la descrizione del progetto attraverso IProject.setDescription.  Un'eccezione è costituita dal fatto che l'aggiunta o rimozione di nature progetto non attiverà i metodi di configurazione o deconfigurazione della natura corrispondente.  Un'altra eccezione è costituita dal fatto che le modifiche al nome del progetto vengono ignorate.

Quando un nuovo progetto viene creato in una posizione in cui è presente un file di descrizione progetto, quel file di descrizione fungerà da descrizione del progetto.  Un'eccezione è rappresentata dal fatto che il nome del progetto nel file sarà ignorato se non corrisponderà al nome del progetto in corso di creazione.  Se il file di descrizione sul disco non è valido, non sarà possibile creare il progetto.
 

Tag di configurazione:

   <!ELEMENT projectDescription (name, comment, projects, buildSpec, natures)>

   <!ELEMENT name EMPTY>

   <!ELEMENT comment EMPTY>    <!ELEMENT projects (project)*>
   <!ELEMENT project EMPTY>    <!ELEMENT buildSpec (buildCommand)*>
   <!ELEMENT buildCommand (name, arguments)>
   <!ELEMENT name EMPTY>
   <!ELEMENT arguments (dictionary?)>
   <!ELEMENT dictionary (key, value)*>
   <!ELEMENT key EMPTY>
   <!ELEMENT value EMPTY>    <!ELEMENT natures (nature)*>
   <!ELEMENT nature EMPTY> Esempi: di seguito è riportato un file di esempio di descrizione del progetto.  Nel progetto sono configurati una singola natura e un generatore e sono presenti alcuni riferimenti a progetti.

<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
    <name>WinterProject</name>
    <comment>This is a cool project.</comment>
    <projects>
        <project>org.seasons.sdt</project>
        <project>CoolStuff</project>
    </projects>
    <buildSpec>
        <buildCommand>
            <name>org.seasons.sdt.seasonBuilder</name>
            <arguments>
                <dictionary>
                    <key>climate</key>
                    <value>cold</value>
                </dictionary>
            </arguments>
        </buildCommand>
    </buildSpec>
    <natures>
        <nature>org.seasons.sdt.seasonNature</nature>
    </natures>
</projectDescription>
 

Informazioni API: il contenuto del file di descrizione del progetto è associato all'interfaccia org.eclipse.core.resources.IProjectDescription. Il file di descrizione del progetto può essere sovrascritto mediante il metodo IProject.setDescription().

Copyright IBM Corp.
e altri 2000,2002.