애플리케이션 Manifest 파일은 OSGi 프레임워크에서 번들의 모듈 측면을 처리할 수 있도록 하는 메타데이타를 포함합니다.
Manifest-Version: 1.0
Application-Name: OSGi Blog Application
Application-SymbolicName: com.ibm.ws.eba.example.blog.app
Application-Version: 1.0.0
Application-Content: com.ibm.ws.eba.example.blog.api;version=1.0.0,
com.ibm.ws.eba.example.blog.persistence;version=1.0.0,
com.ibm.ws.eba.example.blog.web;version=1.0.0,
com.ibm.ws.eba.example.blog;version=1.0.0,
com.ibm.json.java;version="1.0.0"
Application-ManifestVersion: 1.0
Application-ImportService: com.ibm.ws.eba.counter.Greet
Application-ExportService: com.ibm.ws.eba.example.blog.api.BloggingService
Java™와 유사한 패키지 표기법을 사용하는, OSGi 애플리케이션의 고유한 기호 이름입니다.
번들 버전에 대한 OSGi 구문을 사용하는 애플리케이션 버전입니다.
애플리케이션 이름.
번들 분석을 위해 OSGi 프레임워크에서 사용하는 번들의 외부 종속성을 선언합니다. 각 서비스의 특정 버전 또는 버전 범위를 선언할 수 있습니다.
애플리케이션이 이용하는 외부 서비스에 대한 필터 세트입니다. 애플리케이션 Manifest는 서비스에 필요한 클래스를 포함해야 합니다. 이 헤더가 지정되지 않으면 필수 서비스는 가져오지 않습니다.
<service identifier>;<directives>;<attributes>
예를 들어, 다음과 같습니다. test.it;filter="some_filter"
Application-ImportService 헤더에는 다음 속성이 포함됩니다. 번들 외부에서 볼 수 있는 서비스를 선언합니다. 여기에 선언되지 않은 서비스는 번들에서만 볼 수 있습니다.
애플리케이션이 생성하는 외부 서비스에 대한 필터 세트입니다. 헤더가 지정되지 않으면 필수 서비스는 내보내지 않습니다.
<service identifier>;<directives>;<attributes>
예를 들어, 다음과 같습니다. test.it;filter="some_filter"
Application-ExportService 헤더에는 다음 속성이 포함됩니다. 적어도 하나의 패키지를 애플리케이션 번들에 제공하는 공유 번들입니다.
Application-Content 목록에서 번들의 패키지 종속성을 충족시키는 데 사용할 번들 또는 컴포지트 번들 목록입니다. Use-Bundle 목록에 있는 각 번들 또는 컴포지트 번들은 Application-Content 목록에 있는 하나 이상의 번들에 하나 이상의 패키지를 제공해야 합니다. 이러한 번들은 런타임에 공유 번들 공간으로 프로비저닝됩니다.
보통 Use-Bundle 헤더가 필요하지 않지만 유용한 경우도 있습니다. 이는 공유가 가능한 레벨을 제한하는 데 사용할 수 있습니다. 예를 들어, 애플리케이션이 테스트하는 패키지 가져오기에 동일한 번들을 사용하는지 확인할 수 있습니다. 또는 두 애플리케이션이 패키지 가져오기에 동일한 번들을 사용하는지 확인할 수 있습니다. 애플리케이션 레벨에서 제한사항을 설정하여 번들의 유연성을 유지할 수 있습니다.
애플리케이션에 포함된 비OSGi 동적 웹 프로젝트의 목록입니다.
이 헤더는 OSGi 표준에 속하지 않습니다.
<module identifier>;<directives>;<attributes>
일반적으로 모듈 ID는 번들의 기호 이름입니다. 번들이 아닌 자원을 참조하기 위해 모듈 ID는 OSGi 애플리케이션 루트에 상대적인 경로입니다.
Application-Content 헤더에는 비즈니스 서비스를 구성하는 중요한 애플리케이션만 정의되어 있고, 애플리케이션에 포함된 전체 번들 목록은 정의되어 있지 않습니다. 컨텐츠에 나열된 번들이 애플리케이션에 포함되지 않은 패키지를 사용하는 경우 종속성 분석이 수행되고 누락된 번들이 포함됩니다. 이러한 번들은 애플리케이션에 대한 외부에 존재하는 서비스를 제공할 수 없으며 이에 보안을 적용할 수 없습니다. 이 메커니즘을 사용하여 포함된 번들이 공유됩니다.