1.OSGI框架的组成
1.运行环境
2.模块
3.生命周期管理
4.服务注册
2.bundle中的原数据信息
属性 属性描述
bundle-Activator bundle的Activator类名
Bundle-category bundle的分类属性描述
bundle-classpath bundle的classpath
bundle-RequiredExectionEnvironment bundle运行所需要的环境
dynamicImport-package bundle动态引用的package
Export-package bundle对外暴露的package
import-package bundle引用的package
require-bundle bundle所需要引用的其他的bundle
3.bundle的状态
1.installed
bundle已经成功的安装了
2.resolved
bundle中所需要的类都已经可用了,resolved状态表明准备好了用于启动或者说bundle已被停止
3.starting
bundle正在启动,bundleActivator的start方法已经被调用,不过还没返回
4.active
bundle已启动,并在运行中
5.stopping
bundle正在停止中,bundleactivaotr的stop方法已被调用,不过还没有返回
6.uninstalled
bundle已经被卸载了
4.监听bundle的状态
在监听bundle的状态上OSGI采用的是java中的事件机制
framework Event用于报告framework已启动,改变了startlevel,刷新了packages或是出现了错误(通过实现frameworklistener来监听frameworkEvent)
bundle event用于报告bundle的生命周期的改变(通过实现bundlelistener或synchronousbundlelistener来监听bundleEvent)
5.bundle之间的通讯机制
1.通过package
2.通过context