如何在Karaf 4中部署Osgi Compendium Services?

时间:2015-12-15 12:22:14

标签: java osgi apache-karaf

当我尝试部署使用Compendium服务的捆绑包时出现此错误:

{{1}}

我的软件包已配置好使用:

{{1}}

根据karaf 4 depts documenation。 Osgi Compendium版本是5.0.0。这是否意味着我需要手动配置karaf汇编罐?是否有任何karaf功能包含Compendium Services?

2 个答案:

答案 0 :(得分:3)

概要和核心罐包含OSGi API。它们只能在构建时使用。不要将它们安装到OSGi中。核心API都是由OSGi框架包实现的。该纲要以及企业API包包含太多不同的API,无法在运行时使用。如果安装它们,则可能会因安装的其他API版本冲突而导致问题。

相反,您需要提供实现API的捆绑包。然后,该捆绑包嵌入它实现的API包,或者您还需要安装仅包含此API包的API包。

在这种情况下,您需要安装实现声明性服务规范的“scr”功能。

答案 1 :(得分:0)

我发现了Jean-BaptisteOnofré的引用

  

嗨鲍勃,

     

Karaf 3.0.0已经使用并运送org.osgi.core和   org.osgi.compendium。

     

所以,是的,您可以将5.0.0用于核心,概要和企业。

     

问候JB

告诉Karaf发布osgi纲要。迁移到5.0.0之后,我的pom.xml中出现了冲突,之前我没有注意到。