这是我父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
除了一件事之外,一切正常。我得到:
Auto-properties start: file:bundles/slf4j.jdk14_1.6.1.jar (org.osgi.framework.BundleException: Fragment bundles can not be started.)
消息很清楚,但是我如何告诉pax插件slf4j.jdk是一个片段而不是捆绑包?
虽然我收到错误,但所有捆绑包都分别处于活动状态,但片段已解决。有什么想法吗?
我知道的唯一方法是使用带有@nostart
后缀的显式<provision>
元素。这些参数将逐字传递给Pax Runner。