OSGi服務

第一個OSGi例子基本上都是java pojo來實現,第二個例子開始使用服務,使用服務主要的關鍵點在於服務的提供者入口和服務的使用者入口,服務提供者需要將接口暴露出來,而實際的實現類則不在導出的包中體現。

註冊服務在Activator的start方法中使用context.registerService來註冊;

服務獲取使用一箇中間層來實現,context.getServiceReference,並通過這個服務引用調用getService來獲取實際的服務對象。

這個例子裏面在run configuration中需要新增如下的bundle才能運行成功:

javax.annotation

javax.inject

org.eclipse.core.contenttype

org.eclipse.core.runtime

org.eclipse.core.runtime.compatibility

org.eclipse.equinox.app

org.eclipse.equinox.registry

org.eclipse.update.configurator


請注意,這幾個包是除過書本中明確的包添加之外還需要另外添加的包,否則例子就無法運行起來。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章