片段内的组件从未激活
当我使用OSGi声明式服务方式在片段内创建组件时,此组件未被激活,但主机包中的组件被激活。 我错过了什么吗? 我的片段具有适用于主机包符号名称的meta-inf
文件条目。
我以这种方式宣布一个组件
@Component(immediate = true)
由于bundle片段永远不会启动,因此只会解析它们中的声明性服务组件。 该规范明确指出将忽略片段中的Service-Component标头(这是注释转换为的标头)。
您可以使声明性服务适用于片段,但只能通过从主机中的Service-Component标头引用片段中的XML文件。 让主机包知道片段中的内容可能与您所追求的架构模式相反,遗憾的是。 我甚至不确定使用SCR注释是否可以进行这样的安排。 一种选择是使用蓝图以声明方式从片段注册服务,这确实有效。 有一个蓝图教程可以在http://aries.apache.org/documentation/tutorials/blueprinthelloworldtutorial.html上找到 。
–
企业OSGi在行动:www.manning.com/cummins
- 如何在Java中完成导入?
- 如何从ActiveMQ队列创建Spring Reactor Flux?
- 如何使用JPA在实体内部持久保存Map(java.util.Map)对象并确保持久性级联?
- 返回ArrayList或List?
- 在Apache spark中,使用mapPartitions和组合使用广播变量和map之间的区别是什么
- 对一个集合的元素执行操作并迭代结果以执行其他操作
- 简单UDP广播客户端和服务器在不同的机器上
- 使用elasticsearch对文本进行分类
- Hibernate从4.3.x迁移到5.x,用于方法org.hibernate.cfg.Configuration.getClassMapping(className)