증분 프로젝트 빌더

org.eclipse.core.resources.builders

작업공간에서 증분 프로젝트 빌더(축약하여 "빌더"라고 함)의 개념을 지원합니다. 빌더의 작업은 자원 델타로 제공되는 자원 변경사항 세트를 처리하는 것입니다. 예를 들어, Java 빌더에서는 변경된 Java 파일을 다시 컴파일하고 새 클래스 파일을 만듭니다.

빌더는 프로젝트별로 구성되고 프로젝트의 자원이 변경되면 자동으로 실행됩니다. 그러므로 빌더는 프로젝트의 자원 수가 아니라 변경사항 개수에 따라 속도와 규모가 조정되어야 합니다. 이는 빌더가 자신의 "빌드 상태"를 점진적으로 갱신할 수 있음을 의미합니다.

빌더 확장점을 사용하면 빌더 작성기는 기호 이름으로 자신의 빌더 구현을 등록한 다음 작업공간에서 이 빌더 구현을 사용하여 빌더를 찾고 실행할 수 있습니다. 기호 이름은 빌더 확장의 ID입니다. 빌더 확장을 정의할 경우, 빌더를 식별하고 사용자에게 제공될 수도 있는 "name" 속성에 읽을 수 있는 값을 포함하는 것이 바람직합니다.

<!ELEMENT extension (builder)>

<!ATTLIST extension

point CDATA #REQUIRED

id    CDATA #REQUIRED

name  CDATA #IMPLIED>


<!ELEMENT builder (run?)>

<!ATTLIST builder

hasNature      (true | false)

isConfigurable (true | false) >


<!ELEMENT run (parameter*)>

<!ATTLIST run

class CDATA #REQUIRED>


<!ELEMENT parameter EMPTY>

<!ATTLIST parameter

name  CDATA #REQUIRED

value CDATA #REQUIRED>


다음은 빌더 구성에 관한 예제입니다.

   

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

이 확장이 ID가 "com.xyz.coolplugin"인 플러그인에서 정의된 경우, 이 빌더의 완전한 이름은 "com.xyz.coolplugin.coolbuilder"입니다.

클래스 속성 값에서 org.eclipse.core.resources.IncrementalProjectBuilder의 서브클래스를 표시해야 합니다.

플랫폼에 사전 정의된 없습니다. 특정 제품 설치에 필요한 빌더가 포함될 수 있습니다.