`
melland
  • 浏览: 72730 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

什么是OSGi

    博客分类:
  • OSGi
阅读更多
OSGi是什么?
OSGi是一种松散耦合的组件和服务运行平台规范. 简单的说, 用户只需要修改通用的Java类库档案JAR文件中的META-INF下的元数据文件MANIFEST.MF, 添加必要的标签信息, 放置到OSGi框架的Bundle Repository中, 用户的类库就成了OSGi环境的一部分.

成为OSGi环境的组件, 为其他标准的OSGi组件提供代码功能是最为直接的一种功能. 用户也可以将提供组件中的某种功能的接口和实现实例发布到OSGi服务注册表中, 供其他组件直接查找使用. 这就是OSGi的Serivce概念. 同样, 用户可以查找OSGi环境中其他组件提供的接口服务, 调用改服务完成必要的处理.

OSGi组件提供的服务具有两种层面的含义: 系统层面, 即一个组件为其他组件提供服务, 这些服务体现为Java接口的实现; 业务层面, 即一个组件为外部系统或用户提供某种业务服务实现.

OSGi的组成.
OSGi框架由4层组成:运行环境、模块、生命周期管理、服务注册.

运行环境是指标准的java环境. 只要具备了java2的构造和轮廓的都是被认可的运行环境.
模块层定义了采用的ClassLoader机制.

生命周期管理层则为bundle的安装、启动、停止、更新和卸载提供了支持.

服务注册为Bundles提供了一个动态的协作模型. 本来Bundles可通过传统的class共享方式来实现协作, 但在动态的安装和卸载代码的环境下这种方法是不适用的. 服务注册为Bundles间共享Objects提供了一种可用的模型, OSGI提供了一堆的事件来通知服务的使用者关于服务的注册和卸载, 服务其实就是简单的Java objects.
分享到:
评论

相关推荐

    Introduce.OSGi.ppt

    3. **什么是OSGi** OSGi是一个动态模块系统,为Java提供了一套标准(JSR232和JSR291)。它不仅是一个通用中间件,而且提供了构建模块化、动态和可扩展系统的最佳实践指南和支持。OSGi的核心特点包括: - **模块化*...

    osgi介绍osgi介绍

    OSGi(Open Services Gateway Initiative)是一种Java模块化系统,它为开发人员提供了一种动态、模块化的运行时环境。在OSGi中,应用程序被分解为称为“bundle”的独立单元,这些bundle可以相互依赖并独立地加载、...

    《深入理解OSGi:Equinox原理、应用与最佳实践》

    本书一共分为四个部分:第一部分走近OSGi,这部分为后文的研究和讲解建立一个基础,让读者了解OSGi的来龙去脉以及它出现的意义,回答了“什么是OSGi”和“为什么要使用OSGi”两个问题;第二部分OSGi规范与原理,介绍...

    Equinox OSGi 开发

    在深入探讨基于Equinox平台的OSGi Bundle开发之前,我们首先需要了解什么是OSGi服务平台以及为什么它如此重要。OSGi(Open Service Gateway Initiative)服务平台是一个用于开发可远程部署的服务应用程序的Java框架...

    《深入理解OSGi:Equinox原理、应用与最佳实践》迷你书

    1. 走近OSGi:首先介绍OSGi的基本概念,包括什么是OSGi,以及为何要使用OSGi。OSGi为Java开发者提供了一种模块化编程的方式,这有助于简化大型应用程序的开发、维护和管理。通过使用OSGi,开发者可以编写能够在运行...

    OSGI 开发文档中文的

    OSGI(Open Services Gateway Initiative)是一种开放标准,用于创建可模块化的Java应用程序。它提供了一种灵活的框架,使得开发者可以构建、部署和管理模块化组件,这些组件被称为服务或bundle。OSGI的核心理念是将...

    OSGi到底给我们带来了什么[附PPT和Demo]

    标题“OSGi到底给我们带来了什么[附PPT和Demo]”表明,这个资源可能包含一个介绍OSGi的演示文稿(PPT)和实际操作示例(Demo),帮助读者理解OSGi的实际应用和优势。通常,PPT会通过视觉方式展示OSGi的关键概念和...

    OSGI 实例eclipse插件开发

    OSGI(Open Services Gateway Initiative)是一种模块化系统和Java服务框架,它允许应用程序由一系列可独立更新和替换的模块组成,这些模块称为“bundle”。在本实例中,我们将探讨如何利用OSGI技术来开发Eclipse...

    OSGI组件编程(osgi.component.programming)

    OSGI组件编程是一种在Java平台上构建模块化应用程序的方法,它由OSGi联盟制定标准,并被广泛应用于企业级软件开发,尤其是对于需要高度可扩展性和动态性的系统。在本教程中,我们将深入探讨如何使用Eclipse和Equinox...

    OSGi入门教程(OSGi Introduce)

    OSGi(Open Services Gateway Initiative)是一种Java平台上的模块化服务框架,它定义了一种标准,使得开发者能够构建可互操作的、动态的、模块化的软件系统。OSGi的核心概念是基于Java的模块化,它的主要目标是为...

    仿Outlook风格界面框架(OSGi.NET插件)源码20130603

    首先,我们来了解什么是OSGi(Open Services Gateway Initiative)。OSGi是一种Java服务平台,用于管理软件模块和服务的生命周期。它允许模块化开发,使得组件可以独立更新而不影响整个系统。然而,在这里提到的...

    osgi,林昊写的osgi实战和进阶

    OSGI(Open Services Gateway Initiative)是一种Java模块化系统,它允许开发者将应用程序分解为一系列可独立部署、更新和交互的服务。林昊所著的《OSGI实战》与《OSGI进阶》是深入理解OSGI技术的重要参考资料,适合...

    osgi重要文档--osgi核心规范文档,osgi服务文档,osgi-最佳原理与实践(王昊编著,共79页)

    这个压缩包包含了关于OSGI的重要文档,分别是“OSGi R4核心规范文档”、“OSGi服务文档”以及“OSGi-最佳原理与实践”(王昊编著)。下面将详细介绍这些文档所涵盖的关键知识点。 首先,"OSGi R4核心规范文档"是...

    OSGI 入门资料PDF

    OSGI(Open Services Gateway Initiative)是一种开放标准,用于创建模块化和动态的Java应用程序。它为Java开发人员提供了一个框架,使他们能够构建可热插拔的组件,从而实现更灵活、可扩展和可维护的软件系统。在本...

    org.osgi.core-4.2.0

    标题 "org.osgi.core-4.2.0" 指的是一个特定版本的 OSGi(Open Services Gateway Initiative)核心框架库,版本号为 4.2.0。OSGi 是一个 Java 平台的模块化系统和服务平台,它提供了一种标准的方式来组织和管理 Java...

    osgi学习笔记(一)

    OSGi(Open Services Gateway Initiative)学习笔记(一) 在IT领域,OSGi是一种模块化系统和Java服务平台,它提供了一种动态管理软件组件的能力。本文将深入探讨OSGi的基本概念、架构以及如何使用它来构建可扩展和...

    tomcat嵌入OSGI容器

    标题中的“tomcat嵌入OSGI容器”是指在Apache Tomcat服务器中集成OSGI(Open Service Gateway Initiative)框架,使得Tomcat能够支持模块化的应用程序部署和管理。OSGI是一种Java平台上的服务导向架构,它允许动态地...

    spring osgi相关资源

    Spring OSGi是Spring框架与OSGi(Open Service Gateway Initiative)规范相结合的一种技术,它允许在OSGi容器中运行和管理Spring应用。OSGi是一种模块化系统,为Java应用程序提供了动态部署、版本控制和依赖管理的...

    OSGI + Webservice 例子

    OSGI(Open Services Gateway Initiative)是一种开放标准,用于创建模块化和可扩展的Java应用程序。它提供了一种灵活的框架,允许开发人员将应用程序分解为独立的模块,这些模块称为服务。OSGI的核心是它的模块系统...

Global site tag (gtag.js) - Google Analytics