- 1、本文档共23页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
OSGI入门
* * OSGI入门 作者:李金峰 概述(一) 1.开放服务网关协议 (Open Services Gateway initiative),简称OSGi,为网络服务定义了一个标准的、面向服务的计算环境,为用户提供了开放的、面向服务组件的、易于部署的编程模型。 2.OSGi 是由 1999 年成立的 OSGi 联盟提出的一个开放的服务规范,后来 Eclipse 组织注意到了 OSGi 的优点,决定将 Eclipse3.0 及后续版本的插件体系结构基于 OSGi 来实现,并专门成立了一个子项目 Equinox 来实现 OSGi R4 规范,把 Equinox 作为 Eclipse 的底层运行平台。 概述(二) 3.OSGi框架是一个微核结构的容器,所有的模块都需要运行在容器范围内,在OSGi中所有模块的部署都必须以Bundle的方式来进行部署。OSGI官方称是面向服务的系统架构,也可以理解为面向组件的架构,系统中每一个组件或者一个模块称之为bundle,这也是OSGI里最基本的单元。 4.OSGi框架提供了一套完善的机制用于管理和控制组件(Bundle)、服务(Service)的生命周期,以及组件和服务在其生命周期内的交互。 5.Bundle其实就是一个jar文件,这个jar文件和普通的jar文件唯一不同的地方就是META-INF目录下的MANIFEST.MF文件的内容。 Hollo World!(一) 1.本例用eclipse开发,本人用的是myeclipse 10,内自带了osgi的框架Equinox。 2.本例用的jdk版本为jdk1.6. Hollo World!(二) 建立一个 plug-in 工程,点击FileNewPlug-in Project,如果找不到可以点击FileNewOther...Plug-in Project Hollo World!(三) 填写工程名,这里一般以包名+工程名的方式命名。选择an OSGI frameowork单选按钮,在其右侧选择standard 然后点击Next Hollo World!(四) 填写工程名,这里一般以包名+工程名的方式命名。选择an OSGI frameowork 然后点击Next Hollo World!(五) 这里Provider指的是供应商 点击Finish Hollo World!(六) 这里不要任何模板,钩掉缺省选项 点击Next Hollo World!(七) Hollo World!(八) Eclipse 会在工程名下建立相同路径的 Java Package,其中包含了 Activator 类,插件的配置信息也都放在 MANIFEST.MF 文件中,将来我们相当多的工作都是在其中完成。 Hollo World!(九) 编辑 Activator.java,输入 hello world 语句,代码如下: Hollo World!(十) 我们可以看到每个 Activator 实际都是实现了 BundleActivator 接口,此接口使 Activator 能够接受框架的调用。在框架启动后,启动每个 bundle 的时候都会调用每个 bundle 的 Activator 。 注意:bundle 的 Activator 必须含有无参数构造函数,这样框架才能使用 Class.newInstance() 方式反射构造 bundle 的 Activator 实例。 Hollo World!(十一) 执行:选择 Run Run Configurations …,进入运行菜单,在 OSGi framework 中右键点击选择 new 一个新的 OSGi 运行环境,如图: Hollo World!(十二) 右键OSGI Framework,点击New,如图: Hollo World!(十三) 点击Deselect All去掉默认勾选。选择刚刚建的工程com.li.helloworld Hollo World!(十四) 点击Deselect All去掉默认勾选。选择刚刚建的工程com.li.helloworld Hollo World!(十五) 勾选org.eclipse.osgi组建 Hollo World!(十六) 点击Validate Bundles,验证依赖插件是否有问题 Hollo World!(十七) 控制台出现Hello World! 通过 OSGi 控制台,您可以对系统中所有的 bundle 进行生命周期的管理,另外也可以查看系统环境,启动、停止整个框架,设置启动级别等等操作。如图 ,键入 SS 就可以查看所有 bundle 的状态 Hollo World!(十八) 左菜单中选择MANIFEST.MF文档, 在右下选项中选择MANIFEST.MF
您可能关注的文档
最近下载
- 项目一集控运行职业岗位认知课件.pptx VIP
- Nordic 系列:nRF52840 (基于 Cortex-M4)_(25).nRF52840的硬件测试.docx VIP
- Nordic 系列:nRF52840 (基于 Cortex-M4)_(16).nRF52840的硬件设计指南.docx VIP
- 医疗器械说明书:迈瑞麻醉机WATO+EX-55,65_使用说明书V_1.1中文.pdf
- GMC96B钢轨打磨列车手册.pdf VIP
- 南京三合宅课件.ppt VIP
- 猩红热护理查房.pptx VIP
- 中国肺血栓栓塞症诊治、预防和管理指南(2025版).pptx
- 2025年高考数学全国新课标Ⅰ卷试卷评析及备考策略(课件).pptx VIP
- 医疗器械 质量手册 ISO 13485 QRS 820 (通过FDA、NMPA、CE的审批 版.pdf VIP
文档评论(0)