梦相随1006

版权归 梦相随1006 所有,未经 https://www.cnblogs.com/xin1006 作者许可,严禁转载

导航

随笔分类 -  OSGi

OSGi开发与学习研究
OSGi-开发环境的建立和HelloWorld(04)
摘要:1 OSGi开发环境的建立1.1 Equinox是什么从代码角度来看,Equinox其实就是OSGi核心标准的完整实现,并且还在这个基础上增加了一些额外的功能(比如为框架增加了命令行和程序执行的入口)。我们在之前入门篇讲解的都东西其实都是OSGi核心标准的一小部分。其实它的核心就是一个jar包,这个jar包既能执行(作为标准Java包的特性),也是一个bundle(Manifest里面含有OSGi bundle特有的元数据)。我们能够利用Equinox项目的代码来运行一个实实在在的OSGi框架,框架启动后,你就可以将你开发好bundle放到里面运行。1.2 下载EquinoxEquinox在h 阅读全文

posted @ 2013-10-10 14:12 梦相随1006 阅读(1867) 评论(1) 推荐(1) 编辑

OSGi-入门篇之服务层(03)
摘要:前言作为OSGi框架中最上面的一层,服务层带给了我们更多的动态性,并且使用了大家或多或少都曾了解过的面向服务编程模型,其好处是显而易见的。1 什么是服务简单的说,服务就是“为别人所做的工作”,比如两个对象互相调用方法,那么被调用者就是在为调用者做工作。那么如何将服务和一次普通的方法调用区别开来呢?其实一个服务可以看作是在服务的提供者和使用者之间的一个契约。使用者一般不关心其实现的细节,甚至连谁提供的都不想知道,只要满足这个契约(服务应该提供什么功能,满足什么格式)就好了。使用服务的过程也包含了发现服务和达成协议的形式,也就是说我们需要通过服务的标志性特征来找到对应的服务。其实,Java的接口可 阅读全文

posted @ 2013-10-10 10:59 梦相随1006 阅读(655) 评论(0) 推荐(0) 编辑

OSGi-入门篇之生命周期层(03)
摘要:前言生命周期层在OSGi框架中属于模块层上面的一层,它的运作是建立在模块层的功能之上的。生命周期层一个主要的功能就是让你能够从外部管理应用或者建立能够自我管理的应用(或者两者的结合),并且给了应用本身很大的动态性。1 什么是生命周期管理一般来说,程序(或者程序的一部分)都一定服从某种生命周期。软件的生命周期有4个典型的阶段,如下图:如果你正在创建一个应用,首先你得安装(install)它;然后当这个应用的所有依赖都满足了,我们就可以执行(execute)这个应用;如果这个应用不需要了,我们可以停止(stop)它;过了一段时间,我们可能需要更新(update)这个应用的版本;最后,我们可能会移除 阅读全文

posted @ 2013-10-10 09:50 梦相随1006 阅读(338) 评论(0) 推荐(0) 编辑

OSGi-入门篇之模块层(02)
摘要:1 什么是模块化模块层是OSGi框架中最基础的一部分,其中Java的模块化特性在这一层得到了很好的实现。但是这种实现与Java本身现有的一些模块化特性又有明显的不同。在OSGi中模块的定义可以参考下图:也就是说一个模块(module)定义了一个逻辑边界,这种模块本身精确的控制了哪些类是完全被封装起来的,而哪些类需要暴露出来作为外部使用。这样我们就可以轻松的将实现屏蔽在模块的内部,而将公共API暴露在外部。2 为什么需要模块化2.1 OSGi中模块化与面向对象的联系与区别在用Java编写面向对象程序的时候,一个了解面向对象概念的人是不会把所有功能都塞到同一个类里面去的,面向对象让你从问题域中发现 阅读全文

posted @ 2013-10-09 19:12 梦相随1006 阅读(370) 评论(0) 推荐(0) 编辑

OSGi-简介(01)
摘要:OSGi是什么?OSGi联盟现在将OSGi定义为一种技术:OSGi技术是指一系列用于定义Java动态化组件系统的标准。这些标准通过为大型分布式系统以及嵌入式系统提供一种模块化架构减少了软件的复杂度。这一系列的标准由OSGi联盟维护,标准的实现通常则称为OSGi容器或者OSGi服务平台。OSGi标准到现在为止应用最广泛的当属是2005年发布的R4。2003年Eclipse开始基于OSGi对Eclipse进行了重构,IBM的加入也影响了R4的制定,作为Eclipse内核的Equinox也成为OSGi标准的参考实现。OSGi各个版本的标准可以从osgi.org中下载。最新标准分为两个部分,OSGi 阅读全文

posted @ 2013-10-09 18:45 梦相随1006 阅读(529) 评论(0) 推荐(0) 编辑