1.3. JAAS 框架
1.3.1. 概述
OSGi 联盟 是一个独立组织,负责定义 OSGi 服务版本 4 的功能。OSGi 服务平台是一组开放规格,简化了复杂软件应用程序的构建、部署和管理。
OSGi 技术通常被称为 Java 的动态模块系统。OSGi 是 Java 的框架,它使用捆绑程序以模块化方式部署 Java 组件,并处理依赖项、版本控制、类路径控制和类加载。OSGi 的生命周期管理允许您在不关闭 JVM 的情况下加载、启动和停止捆绑包。
OSGi 为 Java、卓越的类加载架构和 registry 为服务提供最佳运行时平台。捆绑包可以导出服务、运行进程,并且其依赖项管理。每个捆绑包都可以满足由 OSGi 容器管理的要求。
Fuse 使用 Apache Felix 作为其默认的 OSGi 实施。框架层组成了安装捆绑包的容器。框架以动态、可扩展的方式管理捆绑包的安装和更新,并管理捆绑包和服务之间的依赖项。
1.3.2. OSGi 架构
OSGi 框架包含以下内容:
- 捆绑包 - 组成应用程序的逻辑模块。请参阅 第 1.5 节 “OSGi 捆绑包”。
- 服务层 - 提供模块及其包含组件之间的通信。这个层与生命周期层紧密集成。请参阅 第 1.4 节 “OSGi 服务”。
- 生命周期层 - 提供对底层 OSGi 框架的访问。此层处理单个捆绑包的生命周期,以便您可以动态管理应用程序,包括启动和停止捆绑包。
- 模块层 - 提供 API,以管理捆绑包打包、依赖项解析和类加载。
- 执行环境 - JVM 的配置。此环境使用配置文件来定义捆绑包可以在其中工作的环境。
- 安全层 - 基于 Java 2 安全性的可选层,具有额外的限制和增强。
框架中的每个层都取决于它下的层。例如,生命周期层需要模块层。模块层可以在没有生命周期和服务层的情况下使用。