1.OSGI的定义
OSGI(open sevice getway initiative)即开放的服务网关协议。osgi是面向服务的,是一种面向JAVA的动态模型系统。
OSGI的主要职责是为了能够让开发者创建动态化,模块化的JAVA系统。
2.OSGI框架
osgi理论上可以分为三层
即模块层(Module Layer)主要是包及共享的代码
生命周期层(Lifecycle Layer)主要是Bundle的生命周期管理。
服务层(Service Layer)主要是模块之间的通信和交互。
2.1什么是Bundle?
bundle 是以 jar 包形式存在的一个模块化物理单元,里面包含了代码,资源文件和元数据(metadata),并且jar包的物理边界也同时是运行时逻辑模块的封装边界。