Generatori incrementali di progetto

Identificativo: org.eclipse.core.resources.builders

Descrizione: lo spazio di lavoro supporta la nozione di un generatore incrementale di progetto (abbreviato come "generatore"). Il compito di questo generatore è di elaborare un insieme di modifiche delle risorse (fornite come un delta di risorse). Ad esempio, un generatore Java deve ricompilare i file Java modificati e creare nuovi file di classe.

I generatori sono configurati in base ai singoli progetti e sono eseguiti automaticamente quando le risorse del progetto sono modificate. In quanto tali, i generatori devono essere rapidi e in scala rispetto alla quantità di modifiche apportate piuttosto che al numero di risorse presenti nel progetto. Questo implica che i generatori sono in grado di aggiornare lo "stato della generazione" in maniera incrementale.

Il punto di estensione dei generatori consente a chi scrive un generatore di registrarne l'implementazione con un nome simbolico da utilizzare dall'interno dello spazio di lavoro per trovare ed eseguire generatori. Il nome simbolico rappresenta l'id dell'estensione del generatore. Durante la definizione dell'estensione di un generatore, si consiglia all'utente di includere un valore significativo per l'attributo "name", che identifica il generatore.

Tag di configurazione:

   <!ELEMENT extension (builder)>

   <!ATTLIST extension
     point CDATA #REQUIRED
     id    CDATA #IMPLIED
     name  CDATA #IMPLIED
   >

   <!ELEMENT builder (run?)>

   <!ATTLIST builder
     hasNature (true | false)
   >

   <!ELEMENT run (parameter*)>

   <!ATTLIST run
     class CDATA #REQUIRED
   >

   <!ELEMENT parameter EMPTY>

   <!ATTLIST parameter
     name  CDATA #REQUIRED
     value CDATA #REQUIRED
   >

Esempi: di seguito è riportato un esempio di configurazione di generatore:

   <extension id="coolbuilder" name="Cool Builder" point="org.eclipse.core.resources.builders"> 
      <builder hasNature="false"> 
         <run class="com.xyz.builders.Cool"> 
            <parameter name="optimize" value="true"/> 
            <parameter name="comment" value="Produced by the Cool Builder"/> 
         </run> 
      </builder> 
   </extension> 

Se questa estensione è stata definita in un plug-in con identificativo "com.xyz.coolplugin", il nome completo del generatore sarà "com.xyz.coolplugin.coolbuilder".

Informazioni API: il valore dell'attributo class deve rappresentare una sottoclasse di org.eclipse.core.resources.IncrementalProjectBuilder.

Implementazione fornita: la piattaforma non è dotata di alcun generatore predefinito. Installazioni particolari del prodotto potrebbero comprendere generatori in base alle esigenze.

Copyright (c) 2002 IBM Corporation e altri. Tutti i diritti riservati. Questo programma e il materiale di accompagnamento sono disponibili secondo i termini della Common Public License v1.0 che sono distribuiti con il prodotto, e disponibili all'indirizzo http://www.eclipse.org/legal/cpl-v10.html