摘要
OSGi的一個標准就是各個bundle之間是相互隔離的,每個bundle都有自己的classloader,並且不同的版本之間都是相互隔離的,這樣就使bundle從物理上進行了隔離,那么OSGi 的bundle之間是怎么進行通信的呢?
下面我們將要介紹3中方法。
Bundles之間通信的方法
| 方法 | 描述 |
| 1.Export-Package | 根據OSGi規范,每個工程可以通過聲明Exprot-Package對外提供訪問此工程中的類和接口,可以先把bundle導出,再導入到需要調用的bundle中 |
| 2.OSGi服務 | 通過將要對外提供功能聲明為OSGi的服務實現面向接口、面向服務式的設計; |
| 3.Event | 基於OSGi的Event服務也是實現模塊交互的一種可選方法,模塊對外發布事件,訂閱了此事件的模塊就會相應地接收到消息,從而做出反應,以達到交互的目的。 |
