OSGI

OSGi的主要职责就是为了让开发者能够建动态化、模块化的Java系统。

OSGi的组成

通常,OSGi 框架从概念上可以分为三层:模块层、生命周期层和服务层。各层的主要功能如下:

<!--[if !supportLists]-->Ø  <!--[endif]-->Module Layer —— 模块层主要涉及包及共享的代码;

<!--[if !supportLists]-->Ø  <!--[endif]-->Lifecycle Layer —— 生命周期层主要涉及 Bundle 的运行时生命周期管理;

<!--[if !supportLists]-->Ø  <!--[endif]-->Service Layer —— 服务层主要涉及模块之间的交互和通信。

Bundle 是 OSGi 中的基本组件,其表现形式仍然为 Java 概念中传统的 Jar 包,同时通过 META-INF 目录下的 MANIFEST.MF 文件对其予以进一步的定义。

Bundle可以被动态地安装、启动、停止和卸载。

Bundle是服务(Service)和组件(Component)的载体。

 

在OSGi中,每个Bundle都有自己独立于其他Bundle的ClassLoader,正因为这样,各个Bundle内部的类是隔离的

posted @ 2016-03-09 18:56  fay wang  阅读(218)  评论(0编辑  收藏  举报