기본 빌드 디스크립터
기본 빌드 디스크립터의 계층 구조를 통해 생성 프로세스의 유연성이 증가합니다.
- 워크벤치
- 프로젝트
- 소스 폴더
- 패키지
- EGL 소스 파일
빌드 디스크립터를 지정하는 방법에 대한 정보는 기본 빌드 디스크립터 설정을 참조하십시오.
기본 빌드 디스크립터의 계층 구조
생성 마법사를 사용하여 기본 빌드 디스크립터를 대체하지 않은 경우 모든 EGL 생성 조작에서는 생성 중인 파트에 대해 지정된 기본 빌드 디스크립터를 사용합니다. 생성 마법사를 사용하려면 EGL 소스 파일을 마우스 오른쪽 단추로 클릭하고 마법사를 사용한 생성을 클릭하십시오.
사용할 기본 빌드 디스크립터를 판별하기 위해 EGL은 생성 중인 파트의 소스 파일에서 검색을 시작하고 빌드 디스크립터의 첫 번째 인스턴스를 찾을 때까지 디렉토리 구조에서 위로 이동합니다.
- Rich UI 프로젝트의 경우 EGL은 projectNameJavaScriptBuildOptions 빌드 디스크립터 파트를 지정합니다.
- 일반 프로젝트의 경우 EGL이 지정하는 빌드 디스크립터 파트는
프로젝트를 작성할 때 선택하는 대상 런타임 플랫폼에
따라 다릅니다.
- Java™의 경우 projectNameJavaBuildOptions
- COBOL의 경우 projectNameCOBOLBuildOptions
- 웹 또는 플러그인 프로젝트의 경우 EGL은 projectNameJavaBuildOptions 빌드 디스크립터 파트를 지정합니다.
EGL이 기본 빌드 디스크립터를 해석하는 방법에 대한 자세한 정보는 이 주제의 "빌드 디스크립터, 대상 플랫폼 및 디버거"와 해당 예를 참조하십시오.
빌드 디스크립터, 대상 플랫폼 및 디버거
- 디버그
- 대상 플랫폼
- EGL은 Java 또는 COBOL로 생성되는 파트에 대해 해석 디버거를 사용합니다. 이 디버거는 EGL 소스 코드를 해석하여 작동합니다.
- EGL은 JavaScript로 생성되는 파트에 대해 JavaScript 디버거를 사용합니다. 이 디버거는 브라우저에서 생성된 코드를 실행하여 작동합니다.
- COBOL
- Java
- JavaScript
카테고리 내에서 모든 값은 제공된 레벨에서 지정된 경우에 해당 레벨에서 사용됩니다. 이 규칙은 EGL이 대상 플랫폼 카테고리에서 빌드 디스크립터를 찾고 레벨에서 일치를 발견한 경우 추가 빌드 디스크립터 파트에 대해 상위 레벨에서 계속 찾지 않음을 의미합니다.
예 1: 클라이언트 및 서버의 라이브러리 생성
UIProject <- JavaScript default build descriptor (system)
EGLSource
handlers
MyHandler.egl
libraries
MyLibrary.egl
UIProject.eglbld
...
이 프로젝트는 Rich UI에 맞게 사용자 정의되어 있으므로 프로젝트를 작성할 때 EGL이 JavaScript 대상 플랫폼의 프로젝트 레벨 기본 빌드 디스크립터를 지정했습니다. MyLibrary.egl에 대해 Java 및 JavaScript 생성을 모두 사용하려면 라이브러리에 대해 Java 및 JavaScript 기본 빌드 디스크립터를 모두 지정하십시오.

UIProject <- JavaScript default build descriptor (system)
EGLSource
handlers
MyHandler.egl
libraries <- Java and JavaScript default build descriptors (user)
MyLibrary.egl
UIProject.eglbld
...
- MyLibrary.egl 라이브러리의 경우 EGL은 소스 파일로 시작하고 패키지 레벨에 도달할 때까지 디렉토리 구조에서 위로 이동합니다. 해당 레벨에서 EGL은 Java 및 JavaScript의 사용자 정의 기본 빌드 디스크립터를 찾습니다. Java 및 JavaScript와 호환 가능한 소스 파일에서 이러한 EGL 유형만 사용한 경우 EGL은 두 버전의 라이브러리를 모두 생성합니다.
- MyHandler.egl 파일의 경우 EGL은 소스 파일로 시작하고 프로젝트 레벨에 도달할 때까지 디렉토리 구조에서 위로 이동합니다. 이 레벨에서 EGL은 JavaScript의 시스템 기본 빌드 디스크립터를 찾고 .js 파일을 생성합니다. .js 파일은 배치 중 HTML 파일에 임베드됩니다.
예 2: 생성 실패
<- JavaScript default build descriptor (system)
UIProject <- Java default build descriptor (user)
EGLSource
handlers
MyHandler.egl
libraries
MyLibrary.egl
UIProject.eglbld
...
- MyLibrary.egl의 경우 EGL은 소스 파일로 시작하고 Java(사용자 정의) 및 JavaScript(시스템)의 기본 빌드 디스크립터를 모두 찾는 프로젝트 레벨에 도달할 때까지 디렉토리 구조에서 위로 이동합니다. EGL은 이전과 같이 두 번의 라이브러리를 모두 생성합니다.
- MyHandler.egl의 경우 EGL은 소스 파일로 시작하고 Java 및 JavaScript의 동일한 기본 빌드 디스크립터를 모두 찾는 프로젝트 레벨에 도달할 때까지 디렉토리 구조에서 위로 이동합니다. Rich UI를 Java로 생성할 수 없으므로 오류로 종료됩니다.
예 3: 동일한 프로젝트에서 UI 및 서비스 생성
UIProject <- JavaScript default build descriptor (system)
EGLSource
handlers
MyHandler.egl
services <- Java default build descriptors (user)
MyService.egl
UIProject.eglbld
...
- MyService.egl 서비스의 경우 EGL은 소스 파일로 시작하고 패키지 레벨에 도달할 때까지 디렉토리 구조에서 위로 이동합니다. 해당 레벨에서 EGL은 Java의 사용자 정의 기본 빌드 디스크립터를 찾고 Java 서비스를 생성합니다.
- MyHandler.egl 파일의 경우 EGL은 소스 파일로 시작하고 프로젝트 레벨에 도달할 때까지 디렉토리 구조에서 위로 이동합니다. 이 레벨에서 EGL은 JavaScript의 시스템 기본 빌드 디스크립터를 찾고 .js 파일을 생성합니다.
예 4: 개별 프로젝트에서 UI 및 서비스 생성
ServiceProject <- Java default build descriptor (system)
EGLSource
services
MyService.egl
ServiceProject.eglbld
...
UIProject <- JavaScript default build descriptor (system)
EGLSource
handlers
MyHandler.egl
UIProject.eglbld
...
- MyService.egl 파일의 경우 EGL은 소스 파일로 시작하고 프로젝트 레벨에 도달할 때까지 디렉토리 구조에서 위로 이동합니다. 해당 레벨에서 EGL은 Java의 시스템 기본 빌드 디스크립터를 찾고 Java 서비스를 생성합니다.
- MyHandler.egl 파일의 경우 EGL은 소스 파일로 시작하고 프로젝트 레벨에 도달할 때까지 디렉토리 구조에서 위로 이동합니다. 이 레벨에서 EGL은 JavaScript의 시스템 기본 빌드 디스크립터를 찾고 .js 파일을 생성합니다.
마스터 빌드 디스크립터 및 빌드 디스크립터 체인
시스템 관리자가 마스터 빌드 디스크립터를 사용하도록 요청할 수 있습니다. 이러한 종류의 빌드 디스크립터는 대체할 수 없으며 EGL의 설치에서 발생하는 모든 생성에 적용되는 정보를 지정합니다. 시스템 관리자는 파트가 포함된 EGL 빌드 파일과 함께 해당 파트를 이름으로 식별합니다. 마스터 빌드 디스크립터를 설정하는 방법에 대한 정보는 마스터 빌드 디스크립터 설정을 참조하십시오.
생성 특정 빌드 디스크립터에서 빌드 디스크립터 체인을 작성하면 체인의 첫 번째 디스크립터가 두 번째보다 먼저 처리되고 두 번째가 세 번째보다 먼저 처리됩니다. 지정된 빌드 디스크립터를 정의할 때 nextBuildDescriptor 빌드 디스크립터 옵션에 값을 지정하여 체인을 시작합니다(또는 계속합니다). 시스템 관리자는 동일한 기술을 사용하여 마스터 빌드 디스크립터를 작성할 수 있습니다. 정보 체인 작성의 의미는 이후에 설명합니다.
빌드 디스크립터에서 참조하는 빌드 파트는 참조하는 빌드 디스크립터에 표시해야 합니다. 예를 들어, 빌드 파트는 연계 옵션 파트 또는 자원 연관 파트이거나 다음 빌드 디스크립터일 수 있습니다.
옵션의 우선순위
- 마스터 빌드 디스크립터
- 마법사를 사용한 생성 메뉴 옵션을 사용하는 경우 생성 시에 지정되는 대체 값이 포함된 특정 빌드 디스크립터 옵션. 그러나 이러한 옵션은 마스터 빌드 디스크립터에서 설정된 값을 대체할 수 없습니다.
- 생성 특정 빌드 디스크립터와 그 뒤에 표시되는 이로부터 연장되는 체인
- 마스터 빌드 디스크립터에서 연장되는 체인
- 시스템 관리자는 마스터 빌드 디스크립터를 설정하여 변경되지 않는 값을 지정할 수 있습니다.
- 생성 특정 빌드 디스크립터를 사용하여 특정 생성에 해당하는 값을 지정할 수 있습니다.
- 프로젝트 관리자는 하나 이상의 빌드 디스크립터를 사용자 정의하여 기본값 세트를 지정할 수 있습니다. 이러한 대부분의 경우 생성 특정 빌드 디스크립터는 프로젝트 관리자가 개발한 체인의 첫 번째 빌드 디스크립터를 지정합니다. 사용자의 조직이 비슷하게 생성되거나 준비되어야 하는 프로그램 세트를 개발할 때 기본 옵션이 유용할 수 있습니다.
- 시스템 관리자는 마스터 빌드 디스크립터에서 연장되는 체인을 설정하여 일반 기본값 세트를 작성할 수 있습니다. 이 기능은 거의 사용되지 않습니다.
- 대상 사용자 ID나 비밀번호와 같은 특정 빌드 디스크립터 옵션을 대체해야 하는 경우 다른 빌드 디스크립터 파트를 설정하지 않고 대체할 수 있습니다.
지정된 빌드 디스크립터가 두 번 이상 사용된 경우 해당 빌드 디스크립터의 첫 번째 액세스가 적용됩니다. 또한 특정 옵션의 첫 번째 지정만 적용됩니다.
예 5: 빌드 디스크립터 체인
마스터 빌드 디스크립터에 다음과 같은 가상 옵션/값 쌍이 포함되어 있다고 가정하십시오.
OptionX 02
OptionY 05
이 예에서 myGen이라는 생성 특정 빌드 디스크립터에는 다음의 옵션/값 쌍이 포함됩니다.
OptionA 20
OptionB 30
OptionC 40
OptionX 50
myGen에 식별된 바와 같이 다음 빌드 디스크립터는 myNext01이며 다음의 쌍이 포함되어 있습니다.
OptionA 120
OptionD 150
OptionB 220
OptionD 260
OptionE 270
마스터 빌드 디스크립터에 식별된 바와 같이 다음 빌드 디스크립터는 myNext99이며 다음의 쌍이 포함되어 있습니다.
OptionW myUserID
OptionZ 99
EGL은 다음과 같은 순서의 옵션 값을 허용합니다.
- 마스터 빌드 디스크립터에 있는 옵션의 값:
OptionX 02 OptionY 05이러한 옵션은 다른 모든 옵션을 대체합니다.
- 생성 특정 빌드 디스크립터 myGen의 값:
OptionA 20 OptionB 30 OptionC 40myGen에 있는 OptionX의 값이 무시되었습니다.
- myNext01 및 myNext02에 있는 다른 옵션의 값:
OptionD 150 OptionE 270myNext02에 있는 OptionB 및 OptionD의 값과 마찬가지로 myNext01에 있는 OptionA의 값이 무시되었습니다.
- myNext99에 있는 다른 옵션의 값:
OptionW myUserID OptionZ 99 - 또한 생성 마법사를 사용하는 경우 생성 출력을 배치하기 위해 준비할 시스템에 대해 대상 사용자 ID 및 비밀번호와 같은 특정 빌드 디스크립터 옵션을 대체하도록 선택할 수 있습니다. 예를 들어, myNext99의 OptionW가 destUserID 빌드 디스크립터 옵션이고 생성 마법사를 사용하는 경우 생성 시 OptionW의 값을 설정하거나 변경할 수 있습니다.