私は OSGI のバンドルとして単純な電卓サービスを作成していました。src/lib にはすべての依存 jar が含まれており、それらは pom.xml に含まれています。
<dependency>
<groupId>commons-lang-2.4</groupId>
<artifactId>commons-lang-2.4</artifactId>
<scope>system</scope>
<version>2.4</version>
<systemPath>${basedir}\src\lib\commons-lang-2.4.jar</systemPath>
</dependency>
<dependency>
<groupId>httpcore-4.1.3</groupId>
<artifactId>httpcore-4.1.3</artifactId>
<scope>system</scope>
<version>4.1.3</version>
<systemPath>${basedir}\src\lib\httpcore-4.1.3.jar</systemPath>
</dependency>
<dependency>
<groupId>httpclient-4.0-alpha4</groupId>
<artifactId>httpclient-4.0-alpha4</artifactId>
<scope>system</scope>
<version>4.0</version>
<systemPath>${basedir}\src\lib\httpclient-4.0-alpha4.jar</systemPath>
</dependency>
<dependency>
<groupId>org.apache.thrift-0.9.0</groupId>
<artifactId>org.apache.thrift-0.9.0</artifactId>
<scope>system</scope>
<version>0.9.0</version>
<systemPath>${basedir}\src\lib\org.apache.thrift-0.9.0.jar</systemPath>
</dependency>
</dependencies>
また、インポートされたパッケージには次への参照があります。
<Import-Package>
org.apache.commons.logging,
org.apache.felix.dm,
org.apache.thrift,
org.apache.thrift.async,
org.apache.thrift.meta_data,
org.apache.thrift.protocol,
org.apache.thrift.scheme,
org.apache.thrift.server,
org.apache.thrift.transport
......
正常にコンパイルされますが、バンドルは起動を拒否します:
!メッセージ フレームワーク イベント エラー !STACK 0 org.osgi.framework.BundleException: バンドル "org.thrift.northbound_0.4.0:SNAPSHOT[95]" を解決できませんでした。Reason:Missing Constraint Import-Package: org.apache.thift ; バージョン="[0.9.0, 1.0.0)"
私が欠けているものについての指針はありますか?