Construtores de Projetos Incrementais

Identificador: org.eclipse.core.resources.builders

Descrição: A área de trabalho suporta a percepção de um construtor de projeto incremental (ou a abreviação "construtor"). O job de um construtor é processar um conjunto de alterações em recursos (fornecido como um delta de recursos). Por exemplo, um construtor Java recompilaria arquivos Java alterados e produziria novos arquivos de classe.

Os construtores são configurados por projeto e são executados automaticamente quando os recursos de seus projetos são alterados. Como tal, os construtores devem ser rápidos e escalados de acordo com a quantidade de alterações e não com o número de recursos no projeto. Isso significa que, geralmente, os construtores são capazes de atualizar seus "estados de criação" de forma incremental.

O ponto de extensão dos construtores permite que o construtor grave os registros das implementações do construtor sob um nome simbólico que é então utilizado dentro da área de trabalho para encontrar e executar os construtores. O nome simbólico é o id da extensão do construtor. Ao definir uma extensão do construtor, os usuários são encorajados a incluir um valor legível a seres humanos no atributo "name", o qual identifica seus construtores e potencialmente pode ser apresentado aos usuários.

Marcação da Configuração:

   <!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
   >

Exemplos: A seguir, um exemplo de configuração de um construtor:

   <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 esta extensão foi definida em um plug-in com id "com.xyz.coolplugin", o nome completo deste construtor seria "com.xyz.coolplugin.coolbuilder".

Informações de API: O valor do atributo class deve representar uma subclasse de org.eclipse.core.resources.IncrementalProjectBuilder.

Implementação Fornecida: A plataforma por si só não tem construtores pré-definidos. Instalações do produto especiais podem incluir construtores, conforme pedido.

Copyright (c) 2002 IBM Corporation e outros. Todos os direitos reservados. Este programa e os materiais que o acompanham são disponibilizados sob os termos da Common Public License v1.0 que acompanha esta distribuição e estão disponíveis no endereço http://www.eclipse.org/legal/cpl-v10.html