Générateurs de projet incrémental

Identificateur : org.eclipse.core.resources.builders

Description : l'espace de travail supporte la notion de générateur de projet incrémental (appelé tout simplement "générateur"). La tâche d'un générateur consiste à traiter un ensemble de modifications des ressources (fourni sous forme de delta des ressources). Par exemple, un générateur Java peut recompiler les fichiers Java modifiés et produire de nouveaux fichiers classe.

Les générateurs sont configurés sur la base d'un par projet et s'exécutent automatiquement lorsque les ressources contenues dans leur projet sont modifiées. De ce fait, ils doivent être rapides et à l'échelle de la quantité de changements plutôt qu'à celui du nombre de ressources contenues dans le projet. Ceci implique généralement que les générateurs soient capables de mettre à jour leur "état généré" de manière incrémentale.

Le point d'extension des marqueurs permet aux éditeurs de générateur d'enregistrer leur implémentation de générateur sous un nom symbolique qui est ensuite utilisé dans l'espace de travail pour trouver et exécuter les générateurs. Ce nom symbolique est l'ID de l'extension du générateur.

Marques de configuration :

   <!ELEMENT builder run?>

   <!ELEMENT run parameter*>
   <!ATTLIST run
      class          CDATA #REQUIRED
   >

   <!ELEMENT parameter EMPTY>
   <!ATTLIST parameter
      name         CDATA #REQUIRED
      value        CDATA #REQUIRED
   > Exemples :

L'exemple suivant illustre une configuration de générateur :

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

Informations d'API : la valeur de l'attribut class doit représenter une sous-classe de org.eclipse.core.resources.IncrementalProjectBuilder.

Implémentation fournie : la plateforme n'a pas de générateur prédéfini. Un produit particulier peut inclure les générateurs requis.

Copyright IBM Corp. 2000, 2001. Tous droits réservés.