2011-02-02 4 views
0

を私は問題なく「samba.interfaces」と「samba.messageを」私のプロジェクトをビルドすることができます。しかし、ServiceMixの中、私は起動しようとする「samba.message」バンドルが(パッケージde.samba.commonが含まれている「samba.interfaces」のバンドルが必要です)、私は次のエラーを取得する:だからはServiceMixのでOSGiのパッケージを内蔵:「未解決制約をバンドルに...」

Error executing command: Unresolved constraint in bundle message [195]: module; 
(&(bundle-symbolic-name=de.samba.common)(bundle-version>=0.0.1)) 

、何象徴的な名前は?メインパッケージと同じでなければならないのですか?これは、メッセージバンドルを指定するPOMの一部です。

<plugin> 
      <groupId>org.apache.felix</groupId> 
      <artifactId>maven-bundle-plugin</artifactId> 
      <version>2.2.0</version> 
      <extensions>true</extensions> 
      <configuration> 
       <instructions> 
        <Bundle-Activator>de.samba.message.Activator</Bundle-Activator> 
        <Bundle-SymbolicName>${project.groupId}.${project.artifactId}</Bundle-SymbolicName> 
        <Bundle-Name>SAMBA Message</Bundle-Name> 
        <Bundle-Version>1.0.0</Bundle-Version> 
        <Import-Package> 
         javax.jws, 
         javax.wsdl, 
         javax.xml.bind, 
         javax.xml.bind.annotation, 
         javax.xml.namespace, 
         javax.xml.ws, 
         META-INF.cxf, 
         META-INF.cxf.osgi, 
         org.apache.cxf.endpoint, 
         org.apache.cxf.bus, 
         org.apache.cxf.bus.spring, 
         org.apache.cxf.bus.resource, 
         org.apache.cxf.configuration.spring, 
         org.apache.cxf.resource, 
         org.apache.cxf.service.model, 
         org.apache.cxf.jaxws, 
         org.apache.cxf.transport.http_osgi, 
         org.springframework.beans.factory.config, 
         org.springframework.beans.factory.xml, 
         org.springframework.core.io, 
         org.springframework.beans.factory, 
         org.springframework.context.support, 
         org.springframework.beans, 
         org.springframework.context, 
         org.osgi.framework, 
         org.apache.log4j, 
         de.samba.common.auditingcontrol.*, 
         de.samba.common.collect.*, 
         de.samba.common.message.*, 
         de.samba.common.repository.*, 
         de.samba.common.security.*, 
         de.samba.common, 
         * 
        </Import-Package> 
        <Export-Package>de.samba.message.*</Export-Package> 
        <Private-Package> 

        </Private-Package> 
        <!-- 
        <DynamicImport-Package>*</DynamicImport-Package> 
        --> 
       </instructions> 

何か問題が発生する可能性がありますか?

答えて

0

私は問題を自分で見つけました。コマンドの実行中にエラーが発生しました:バンドルメッセージ[195]の未解決の制約:モジュール。 (&(bundle-symbolic-name = de.samba.common)(bundle-version> = 0.0.1))はまったく予期せず、src/main/resources/META-INFの中にMANIFEST.MFファイルがあるあなたがプラグイン/ OSGi開発をしているならば、バンドル情報を記述します。 Maven BNDプラグインにはそのファイルが含まれていると思われ、そこにない場合は新しい情報が生成されます。

だから、問題は、プラグインが適切なものを生成することができるようにSRC /メイン/リソース/ META-INF/MANIFEST.MFを削除した後に解決しました。

0

私は、OSGiの多くのアイデアを持っていますが、以下の観察を持っていません。

documentation<Bundle-SymbolicName>を計算する方法を指定します。 実世界の例には、projectIdがないようです。

<Bundle-SymbolicName>${project.artifactId}</Bundle-SymbolicName> 
+0

それは役に立たなかった。 – Akku

関連する問題