尽管使用maven bundle插件嵌入所有依赖项,但OSGi Bundle缺少依赖性

时间:2018-04-10 14:50:33

标签: osgi apache-felix osgi-bundle karaf

我对maven-bundle-plugin使用以下设置:

<plugin>
    <groupId>org.apache.felix</groupId>
    <artifactId>maven-bundle-plugin</artifactId>
    <version>3.5.0</version>
    <extensions>true</extensions>
    <configuration>
        <instructions>
            <Embed-Dependency>*;scope=compile|runtime</Embed-Dependency>
            <Embed-Transitive>true</Embed-Transitive>
        </instructions>
    </configuration>
    <executions>
        <execution>
            <id>bundle-manifest</id>
            <phase>prepare-package</phase>
            <goals>
                <goal>manifest</goal>
            </goals>
        </execution>
    </executions>
</plugin>

但是当我尝试启动捆绑包时,我的Karaf实例中出现“缺少要求”错误。

它缺少一个antlr.actions.csharp依赖项,我是否有办法找出哪个包/版本丢失以及它丢失的原因?

编辑:问题似乎与MANIFEST.MF中列出的导入包有关 由于导入的软件包列出了导致问题的软件包。

1 个答案:

答案 0 :(得分:0)

捆绑包的标题应该为您提供缺少的依赖项。在karaf实例中部署Import-Package时,能否显示它的输出?