2016-01-13 55 views
-1

我有两个捆绑包,X和Y.他们都安装并作为捆绑在OSGi.Function sayHello在捆绑X和功能writeHello捆绑YI需要从捆绑Y调用sayHello函数,我会写writeHello返回的字符串功能在捆绑Y. 你可以说它有可能吗?如果有可能怎么可以部署这个逻辑?在我看来,我有一些例如; 我会在Bundle Y的pom中添加Bundle X的依赖项,但是如何在添加依赖项后看到函数sayHello?如何在AEM中调用另一个包的功能?

谢谢。

+0

在发布此问题之前,您是否阅读过有关OSGi的任何内容?任何书籍或教程? –

回答

0

有访问其他包的功能两种方式。对于这两种方法,您需要提供该类的包中的Export-Package以及要使用的外部类的包的Import-Package。

  1. 创建类的实例,使用,如果你想使用类是简单的设置,你不需要去耦它 使用此方法。这是简单图书馆的典型案例。

  2. 将功能发布为OSGi服务并绑定服务 如果难以实例化类并且您不希望客户端参与此操作,请使用此方法。如果你想从实现中解耦,服务方法也是有意义的。为了达到这个目的,你需要创建一个功能接口,并用接口发布服务。客户端可以通过仅指定接口来绑定服务。

相关问题