`
salever
  • 浏览: 254651 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

(续)浅析OSGI的bundle依赖

    博客分类:
  • OSGI
阅读更多

 

上一篇文章,我们谈到了基础的bundle依赖关系,以及当依赖的bundle出现问题的时候的情况。

这里看一个更常见的情况,当依赖的多个插件同时Export了相同的package的时候,bundle如何处理呢?

先预测一下:

据依赖中的顺序来的,优先使用顺序靠前的bundle中的package

还是简单的搭建一个场景测试一下。

测试环境:Eclipse 3.6 、Equinox

具体的见:http://www.xeclipse.com/?p=1186 不想复制了

分享到:
评论

相关推荐

    浅析OSGI的bundle依赖

    这篇博客“浅析OSGI的bundle依赖”可能探讨了如何管理和解决这些模块间的依赖问题。 首先,我们来看一下OSGI中的bundle生命周期。一个bundle可以处于未安装、已安装、启动、暂停、停止或卸载这六种状态之一。当...

    OSGI bundle

    这通常涉及到设置IDEA的项目结构、添加Felix框架的依赖、配置运行配置等操作,使得开发者可以在IDEA中调试和测试OSGI bundle。 **总结** OSGI bundle提供了一种模块化的软件开发方式,使得Java应用程序可以按需...

    基于Eclipse的Equinox框架开发OSGi Bundle应用

    在Java世界中,OSGi(Open Services Gateway Initiative)是一种模块化系统,它允许开发者创建可独立更新和依赖管理的模块,即Bundle。Eclipse的Equinox是实现OSGi规范的一个流行实现。这篇博文将深入探讨如何使用...

    基于EQUINOX的 OSGI BUNDLE 运行例子

    - `HELLOWORLD.MF`是Manifest文件,它包含了关于Bundle的重要元数据,如Bundle的名称、版本、依赖和其他配置信息。 - `步骤.txt`可能是运行示例的详细步骤指南,指导用户如何配置和启动OSGi环境以及部署和运行Bundle...

    OSGI bundle change listener

    2. **依赖管理**:当一个bundle依赖于其他bundle提供的服务时,监听相关bundle的状态变化,可以在适当的时机获取或释放服务。 3. **自动配置**:根据bundle的状态,系统可以自动配置和重新配置自身,例如添加新的...

    tomcat嵌入OSGI容器

    5. **服务生命周期管理**:Tomcat中的Servlet和Filter等Web组件可以通过OSGI服务来声明其依赖,这样在启动时,OSGI容器会自动管理它们的生命周期。 6. **性能和稳定性**:尽管OSGI提供了许多优势,但其动态性也可能...

    OSGI应用中整合Spring、Mybatis、Spring MVC案例

    Mybatis的配置文件可以放在OSGI的bundle中,通过OSGI服务注册Mybatis的SqlSessionFactory,然后在其他bundle中通过服务查找来使用。 Spring MVC是Spring框架的一部分,用于构建Web应用程序。在OSGI环境中集成Spring...

    OSGi with CAR-Bundle

    3. **Bundle作为组件**:每个Bundle可以被视为独立的组件,它们之间通过OSGi服务注册表进行交互,实现动态的依赖管理和服务发现。 4. **使用脚本管理组件**:引入脚本语言,如JavaScript或Groovy,可以更灵活地管理...

    Jar转换为Bundle工具

    导出的包将被其他bundle使用,而导入的包表示当前bundle依赖于哪些其他bundle。 2. **版本控制**:明确每个导出包的版本号,以确保兼容性和隔离性。 3. **类加载机制**:理解OSGI的类加载机制,如何处理类的加载冲突...

    osgi helloworld

    这里涉及到了OSGi的依赖注入,使得bundle间的依赖关系变得灵活且易于管理。此外,`client` bundle还可能需要监听服务的变化,以便在服务生命周期中的任何更改(如服务添加、修改或移除)时做出相应的响应。 在OSGi...

    osgi发布http服务的各种bundle,各种jar包,全全全~

    osgi发布http服务的各种bundle,各种jar包,全全全~非常好用的技术包 包括:org.eclipse.equinox.http_1.0.0.v20060601a.jar org.eclipse.equinox.ds_1.0.0.v20060601a.jar org.eclipse.equinox.servlet.api_1.0.0...

    spring-osgi.jar及其依赖包

    4. **自动依赖管理**:Spring OSGi可以自动管理bundle之间的依赖关系,通过声明式服务(Declarative Services, DS)来声明服务和依赖,降低配置复杂性。 5. **集成其他Spring特性**:Spring OSGi支持Spring的AOP、...

    OSGi与Web容器的整合

    目标平台是开发和运行OSGi应用的基础,需要包含必要的OSGi框架(如Equinox)、Gemini Blueprint和Gemini Web的库,以及可能需要的其他依赖,如Spring框架。 **2.5 创建Web项目** 创建WAB项目包括: 1. 在Eclipse中...

    blueprint-osgi-bundle:OSGi 示例

    **标题解析:** "blueprint-osgi-bundle:OSGi 示例" 指的是一个基于OSGi(Open Service Gateway Initiative)框架的示例项目,它使用了Blueprint服务容器来管理服务组件。Blueprint是Apache Felix项目中的一个子项目...

    GSGI+Eclipse LUNA 配置+HelloWorld例子+Bundle依赖

    在下一章节中,我们将讨论如何处理不同OSGi Bundle之间的依赖关系,以及如何基于接口实现服务的消费。这通常涉及到服务的查找、引用和服务监听等机制,使得各个模块可以动态地发现和使用其他模块提供的服务。 总结...

    OSGI.rar_OSGI eclipse_eclipse osgi_java OSGI_osgi

    5. **部署与管理**:如何在运行时动态安装、更新和卸载OSGI Bundle,以及如何处理依赖关系。 6. **服务导向**:OSGI服务的概念,如何注册和查找服务,以及如何实现服务间的通信。 7. **配置管理**:OSGI中的配置...

    Equinox OSGi 开发

    这使得OSGi成为处理现代软件工程中常见挑战的理想选择,如软件的动态更新、模块间的依赖管理、服务发现与绑定等。 接下来,我们将详细探讨基于Equinox平台的OSGi Bundle开发的关键概念和步骤。 ### Equinox作为...

    基于osgi整合ssm框架注解开发

    OSGi的核心是其模块系统,也称为捆绑(bundle)。每个捆绑都是一个独立的、可热插拔的代码单元,有自己的类加载器。通过OSGi,开发者可以独立地更新、启动或停止这些捆绑,而不影响其他部分的应用程序。OSGi还提供...

    osgi开发jar包

    例如,Export-Package字段定义了bundle对外提供的服务,Import-Package字段则指定了bundle依赖的其他包。理解并正确配置MANIFEST.MF对于构建可工作的OSGi bundle至关重要。 3. **模块化编程**:在OSGi中,每个...

    基于Eclipse开发OSGI的简单实例

    1. **创建OSGi Bundle**:创建一个标准的OSGi Bundle项目,包含`MANIFEST.MF`文件,用于声明Bundle的信息和依赖。 2. **编写代码**:实现服务接口并在Bundle激活时注册服务。使用`BundleContext`的`registerService`...

Global site tag (gtag.js) - Google Analytics