0

親の pom.xml の一部を次に示します。

<dependency>
  <groupId>org.slf4j</groupId>
  <artifactId>slf4j-api</artifactId>
  <version>1.6.1</version>
</dependency>
<dependency>
  <groupId>org.slf4j</groupId>
  <artifactId>slf4j-jdk14</artifactId>
  <version>1.6.1</version>
  <scope>runtime</scope>
</dependency>

     .
     .
     .

<plugin>
  <groupId>org.ops4j</groupId>
  <artifactId>maven-pax-plugin</artifactId>
  <version>1.5</version>
</plugin>

実行するとmvn pax:provision、1 つを除いてすべて正常に動作します。私は得る:

Auto-properties start: file:bundles/slf4j.jdk14_1.6.1.jar (org.osgi.framework.BundleException: Fragment bundles can not be started.)

メッセージは明確ですが、どうすれば slf4j.jdk がバンドルではなくフラグメントであることを pax プラグインに伝えることができますか?

エラー all Bundles are Active それぞれが発生しますが、フラグメントは解決されています。何か案は?

4

1 に答える 1

0

私が知っている唯一の方法は、サフィックス<provision>付きの明示的な要素を使用することです。@nostartこれらの引数はそのままPax Runnerに渡されます。

于 2012-10-17T12:00:19.813 に答える