15.4. 래핑 URL 핸들러
15.4.1. 개요
번들로 패키지되지 않은 JAR 파일을 참조해야 하는 경우 Wrap URL 처리기를 사용하여 동적으로 변환할 수 있습니다. Wrap URL 핸들러의 구현은 Peter Krien의 오픈 소스 Bnd 유틸리티를 기반으로 합니다.
15.4.2. 구문
Wrap URL 구문에는 다음과 같은 구문이 있습니다.
wrap:locationURL[,instructionsURL][$instructions]
locationURL 은 JAR을 찾는 모든 URL일 수 있습니다(참조된 JAR이 번들로 포맷 되지 않음 ). 선택적 instructionsURL 은 번들 변환 수행 방법을 지정하는 Bnd 속성 파일을 참조합니다. 선택적 명령 은 번들 변환 수행 방법을 지정하는 Bnd 속성의 앰퍼샌드 및 delimited 목록입니다.
15.4.3. 기본 지침
대부분의 경우 기본 Bnd 명령은 API JAR 파일을 래핑하는 데 적합합니다. 기본적으로 Wrap은 표 15.1. “JAR 트래핑을 위한 기본 지침” 와 같이 JAR의 META-INF/Manifest.mf
파일에 매니페스트 헤더를 추가합니다.
매니페스트 헤더 | 기본값 |
---|---|
|
|
| 래핑된 JAR의 모든 패키지. |
|
설정된 |
15.4.4. 예
다음 Wrap URL은 Maven 리포지토리에서 commons-logging
JAR의 버전 1.1을 찾고 기본 Bnd 속성을 사용하여 OSGi 번들로 변환합니다.
wrap:mvn:commons-logging/commons-logging/1.1
다음 Wrap URL은 파일의 Bnd 속성을 사용합니다. E:\Data\Examples\commons-logging-1.1.bnd
:
wrap:mvn:commons-logging/commons-logging/1.1,file:E:/Data/Examples/commons-logging-1.1.bnd
다음 Wrap URL은 Bundle-SymbolicName
속성 및 Bundle-Version
속성을 명시적으로 지정합니다.
wrap:mvn:commons-logging/commons-logging/1.1$Bundle-SymbolicName=apache-comm-log&Bundle-Version=1.1
이전 URL을 명령줄 인수로 사용하는 경우 다음과 같이 명령줄에서 처리하지 못하도록 달러 기호 \$
를 이스케이프해야 할 수 있습니다.
wrap:mvn:commons-logging/commons-logging/1.1\$Bundle-SymbolicName=apache-comm-log&Bundle-Version=1.1
15.4.5. reference
랩
URL 처리기에 대한 자세한 내용은 다음 참조를 참조하십시오.
- Bnd 툴 문서: Bnd 속성 및 Bnd 명령 파일에 대한 자세한 내용은 .
- 원래 Pax URL Wrap Protocol 설명서