我有一个带有组件的片段捆绑包,该组件具有@Activate
注释的activate
方法。我找不到有关应该还是不应该起作用的任何确定信息。
一方面,在框架将片段附加到主机,然后重新启动主机的意义上,它可能应该工作。然后,该组件的activate
方法将启动,因为它现在是主机的一部分,该主机会再次激活。
另一方面,它可能应该不起作用,因为在附加片段时,框架不会重新启动主机。在这种情况下,activate
方法永远不会触发。
我尝试自己修补捆绑包,看来不起作用,但是我不确定这是由于我上面提到的后一种情况还是由于其他原因。我尝试查看documentation,除了片段被解析的事实之外,没有提及框架如何在附件期间处理片段和主机的生命周期。
那么,我的问题是,在附加新部署的片段时,OSGi框架对主机有何作用?
答案 0 :(得分:4)
声明性服务不支持片段清单中的Service-Component
头。因此,尽管组件的类和组件的XML组件描述可以来自片段,但是片段清单中的任何Service-Component
头都不会被处理。
请参见https://osgi.org/specification/osgi.cmpn/7.0.0/service.component.html#d0e38069。