Дополняющие компоновщики проектов
Идентификатор:
org.eclipse.core.resources.builders
Описание:
Рабочая область
поддерживает понятие дополняющего компоновщика проекта (или просто
компоновщика). Задача компоновщика - обработать совокупность последних
изменений в ресурсах, называемую также дельтой ресурсов. Например,
компоновщик Java заново скомпилирует измененные файлы Java и создаст новые
файлы классов.
Компоновщики настраиваются для каждого проекта отдельно и запускаются
автоматически при изменении ресурсов в их проектах. Компоновщики должны
работать достаточно быстро и исходить не из количества ресурсов в проекте,
а из объема изменений в ресурсах. Обычно это подразумевает, что
компоновщики могут последовательно обновлять свое "состояние компоновки".
Точка расширения компоновщиков позволяет создателям компоновщиков
регистрировать реализацию компоновщика под символьным именем, которое
затем используется в рабочей области для поиска и запуска компоновщика.
Символьное имя - это идентификатор расширения компоновщика. При
определении расширения компоновщика пользователям рекомендуется добавлять
в атрибут "name" удобочитаемое значение, которое будет обозначать
компоновщик и может быть представлено другим пользователям.
Описание конфигурации:
<!ELEMENT extension (builder)>
<!ATTLIST extension
point CDATA #REQUIRED
id CDATA #REQUIRED
name CDATA #IMPLIED>
- point - полный идентификатор целевой точки расширения
- id - необязательный идентификатор экземпляра расширения
- name - необязательное имя экземпляра расширения
<!ELEMENT builder (run?)>
<!ATTLIST builder
hasNature (true | false)
isConfigurable (true | false) >
- hasNature - "true" или "false", в зависимости
от того, принадлежит ли компоновщик классификатору проекта. Если указано
значение "true", но соответствующий классификатор не найден, то
компоновщик не будет запущен, но останется в спецификации компоновки
проекта. Если атрибут не задан, то по умолчанию принимается значение
"false".
- isConfigurable - "true" или "false", в зависимости от того, позволяет ли компоновщик настраивать, на какие запросы компоновки он будет отвечать. Если равно "true", клиенты смогут использовать API ICommand.setBuilding для указания, следует ли запускать данный компоновщик для определённого за проса на компоновку. Если атрибут не задан, то по умолчанию принимается значение
"false".
<!ELEMENT run (parameter*)>
<!ATTLIST run
class CDATA #REQUIRED>
- class - полное имя производного класса для класса
org.eclipse.core.resources.IncrementalProjectBuilder.
<!ELEMENT parameter EMPTY>
<!ATTLIST parameter
name CDATA #REQUIRED
value CDATA #REQUIRED>
- name - имя этого параметра, доступное экземплярам указанного
класса компоновщика
- value - произвольное значение, связанное с заданным именем и
доступное экземплярам указанного класса компоновщика
Примеры:
Ниже приведен
пример конфигурации компоновщика:
<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>
Если это расширение было определено в модуле с идентификатором
"com.xyz.coolplugin", то полным именем этого компоновщика будет
"com.xyz.coolplugin.coolbuilder".
Информация API:
Значение
атрибута class должно представлять производный класс класса
org.eclipse.core.resources.IncrementalProjectBuilder.
Поставляемая реализация:
Платформа не содержит предопределенных компоновщиков. В конкретных
устанавливаемых версиях продукта могут содержаться необходимые
компоновщики.
Copyright (c) 2002, 2005 IBM Corporation и другие.
Все права защищены. Эта программа и сопутствующие материалы распространяются на условиях Eclipse Public License v1.0, поставляемой вместе с продуктом и доступной на Web-сайте http://www.eclipse.org/legal/epl-v10.html