2014-09-15 21 views
6

나는 다음과 같은 BND 파일이 있습니다 ... 내가 거기에이 원하지 않는bndtools에서 실행 환경의 Require-Capability 헤더가 생성되는 이유는 무엇입니까?

Require-Capability: osgi.ee;filter:="(&(osgi.ee=JavaSE)(version=1.6))" 

나는 그것이해야한다고 볼 수 있습니다 이유가 없다 : 생성 된 MANIFEST.MF에서

Bundle-Version: 1.0.12 
Bundle-Activator: a.b.Activator 
Private-Package: a.b 
-buildpath: osgi.core;version=4.3.0,\ 
    org.apache.felix.bundlerepository;version=1.6.6,\ 
    osgi.cmpn;version=4.3.0.201111022214 
-sources: false 

을 . 어떻게 피할 수 있습니까?

답변

8

bnd 2.3이 자동으로 추가합니다. bnd 파일에서 -noee=true을 사용 중지 할 수 있습니다.

일반적으로 이것은 번들의 기본 JRE 요구 사항을 나타 내기 때문에 필요합니다. bnd는 번들의 클래스 파일 버전을 기반으로 버전을 결정합니다.

+1

아, 죄송합니다. "제한없는"버전 범위이므로 1.6 이상을 의미합니다. 따라서이 문제에 대해 우려 할 필요는 없습니다. 1.6은 유효하지 않습니다. 오. –

+6

'maven-bundle-plugin '으로 어떻게 할 수 있는지 궁금하다면 다음 명령어를 사용하십시오 : <_noee> true <_noee> – viphe

+1

위대한 작품입니다! 여기에 슬래시가 없습니다. 복사/붙여 넣기를 할 때 대신 다음을 사용하십시오 : <_noee> true