2012-03-07 8 views
3

OSGI宣言型サービス(SCR)を使用してコンポーネントバンドルを作成しています。私はmaven-scr-pluginによって生成されたアノテーションベースのコンポーネントXMLファイルを使用することに熱心ではありません。私は手作業でcomponent.xmlを書いています。しかし、私はMANIFESTファイルに追加するService-Componentヘッダが必要です。私はosgiバンドルをビルドするためにmaven-bundle-pluginを使用しています。マニフェストファイルにそのようなヘッダを追加するプラグイン設定で与えることができる指示はありますか?OSGI宣言型サービスのバンドルマニフェストファイルにService-Componentヘッダを追加する方法は?

いくつかの有用なリンク:

felix-SCR

maven-scr-plugin

BND-Service Component

おかげ

答えて

8

バンドルプラグインの設定に行くことができるマニフェストファイルに行くことができます任意のヘッダ要素として。私はそれがここでは必要ではないですので、サービス・コンポーネントは、既知のヘッダのセットに含まれていると考えているが、例えば、

<plugin> 
     <groupId>org.apache.felix</groupId> 
     <artifactId>maven-bundle-plugin</artifactId> 
     <version>2.2.0</version> 
     <extensions>true</extensions> 
     <configuration> 
      <instructions> 
       <Bundle-SymbolicName> 
        ${pom.artifactId} 
       </Bundle-SymbolicName> 
       <Service-Component> 
       OSGI-INF/some-file.xml 
       </Service-Component> 
       .... 

<extensions>true</extensions>ラインは、任意のカスタムヘッダーを可能にします。ただ追加する

+0

+1、 - 最新バージョンは2.3.7 – earcam

+0

おかげで - 私は慎重に十分に見ずにコピー&ペーストして... –

+0

iは、Mavenのバンドル・プラグイン要素が何であるか、サービスコンポーネント理解できないだろうと思いましたうまく動作します。 – sanre6

関連する問題