如何在Karaf的捆绑包之间共享数据?我正在加载两个不同功能的包。我想从其中一个包中写入类似共享内存段的内容,并从另一个包中读取它。感谢
答案 0 :(得分:1)
基本上,您可以像使用任何其他Java应用程序一样使用所有方式进行通信。但并非所有库都与OSGi很好地兼容。
以松散耦合方式进行通信的一种内置方式是eventadmin服务。例如,见tutorial from vogella。
OSGi中最典型的情况是让一个捆绑包提供OSGi服务而另一个捆绑包就可以调用它。
还有像hazelcast这样的库,即使在集群的节点之间也使用一种共享内存。如果不了解您的要求以及您想要做的事情,很难推荐一种方法。