2014-07-21 2 views
0

OSGI 번들을 만들 때 다른 번들이 제대로 작동해야한다고 선언 할 수 있습니다.이 상황에서 다른 번들은 위에서 언급 한 번들에서 가져올 것들을 내보낼 필요가 있습니다.OSGI 번들에 JAR 의존성이 필요하도록 만들기

그러나 번들을 작동시키기 위해 jar 파일이 필요한 경우 어떻게해야합니까?

MANIFEST.MF에이 정보를 쓸 수 있습니까? 나는 번들을 가지고 있으며 번들로 사용되는 다른 번들의 일부 레거시 이유로 몇 개의 jar 파일을 사용해야한다.

이 번들을 빌드하기 위해 OSGI 번들 (maven-bundle-plugin)을 생성하기 위해 maven 플러그인을 사용합니다.

+0

질문에 예제를 제공해 주시겠습니까? 유스 케이스와 설명하려는 것을 이해하는 것은 어렵습니다. 예 : MyBundle 번들과 Jar J가 있습니다. MyBundle에 J를 포함시키고 싶습니다. –

답변

0

일반 JAR을 번들의 종속성으로 사용할 수 없습니다. 번들의 종속성으로 번들 (OSGI Maniifest가있는 JAR) 만 사용할 수 있습니다. 번들 (http://felix.apache.org/site/apache-felix-maven-bundle-plugin-bnd.html 장 제목 "포함하기 의존성")

  • 당신이 그런 병을 embedd :

    당신은 다음과 같은 옵션이 있습니다. 즉, JAR이 번들 내에 있고 매니페스트가 OSGI 컨테이너에 해당 JAR의 클래스를로드하도록 지시합니다.

  • 종속성 병의 OSGI 버전을 찾으십시오. 당신은 Spring EBR에 시도를 제공 할 수 있습니다 또는 ServiceMix bundles
  • 로는 (1 점)를 내장하여 이러한 각 항아리에 대한 번들을 만든 다음이 (선호한다 수입 패키지) 수입 패키지 또는 필요한 번들 로 추가.

두 번째 요점을 찾지 못하면 세 번째 요점을 선호합니다.

관련 문제