如何在eclipse osgi maven中基于maven创建osgi的bundle

最近搞得项目用到了osgi,之前完全没听说过,在网上查了下貌似也是很老的技术,使用范围不是很广的样子,但是既然用到了就要学习一下嘛,先写个简单的小demo,查阅了几个博客,按照正常情况下执行总是报错,后来经过一番研究,终于解决了报错问题,现记录如下。
1 .首先new-other,选择创建plug-in Project,见下图
2 .点击next,选择osgi framework,指定配置为标准,具体内容见下图,这里工程名随便起
3 .点击next,进入下一步,这里默认选项即可,见下图
4 .接下来进入next下一步,选择模板为Hello OSGI Bundle,内容见下图
5 .之后点击next,最后点击finish,这里会自动创建号工程,同时自动生成三个文件
6 .一个是Activator.java文件,另一个是MANIFEST.MF文件,还有一个是build.properties文件,内容见下图
7 .接下来右击项目,点击run as,选择run configuration,选择osgi framework,这里如果只是在workspace中选择自己创建的osgi 项目,进行run,会报错,之前一直卡在这里,报的错是下面这个
8 .那么就在target-platform中添加这个console即可,但是还是会报错,经过多次调试,只需要加上下面这五个bundle即可成功运行,具体见下图
9 .在target-platform中添加上面5个bundle之后,点击run,执行,之后在控制台输出Hello World!,显示osgi命令行,同时可以输入ss查看当前已经安装好的bundle都有哪些,见下图,而且此时烦人的报错也不见了,,,,之前一直卡在这里解决不了,后来一个一个添加bundle终于解决了。。。。
10 .以上就是在eclipse上编写bundle的一个小例子,也算对osgi有了一个感性认知吧,所谓bundle其实就是osgi化的jar包。与普通jar包最大的区别就是不同项目下的bundle可以互相调用。这其实就是模块化的思想。
11 .之后由于osgi的项目会让不同项目之间相互引用,那么首先要将项目bundle化,也就是将项目导成插件,右击刚才创建的项目,选择Export,具体选择下面这个选项
12.点击next,按照下面的图片进行配置,选择之前创建的项目,之后点击finish,就会在指定位置生成一个plugins文件夹,里面就是导出的osgi化的bundle,
13 .以上就是将一个osgi项目导出插件化的bundle的具体步骤。那么osgi的东西先写到这里吧,睡觉。
&&相关文章推荐
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:34455次
排名:千里之外
原创:47篇
(3)(3)(6)(8)(3)(7)(8)(4)(6)
(window.slotbydup = window.slotbydup || []).push({
id: '4740887',
container: s,
size: '250,250',
display: 'inlay-fix'君,已阅读到文档的结尾了呢~~
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
基于Maven构建OSGI
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer-4.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口如何在eclipse中基于maven创建osgi的bundle_百度知道
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。
如何在eclipse中基于maven创建osgi的bundle
我有更好的答案
Juven Xu&bin,在系统变量中新建一个变量,变量名为M2_HOME,变量值为Maven的安装目录D:&#92。如果IDE不是eclipse而是STS:\Users\您的电脑用户名&jdk1.6.0_10为jdk的具体安装路径。验证jdk安装及环境变量的配置:开始——运行中输入cmd进入dos界面C.0_10——确定。然后编辑path变量,在系统变量中新建一个变量,变量名:JAVA_HOME,变量值:C:\窗口中再输入Name(m2eclipse),接着在系统变量中找到一个名为Path的变量。至此,环境变量设置完成,在该页面中选择要运行的osgi bundle的pom文件来执行run osgi bundle。二、建maven bundle,并将其转化成osgi bundle运行。(以一个简单的helloworld为例)1、新建项目父bundle。a)
在eclipe中new——Project——Maven——Maven Project——Next勾选Create a simple project——next在New Maven Project窗口中输入父bundle对应的gav(即Group Id。3:http://m2eclipse.sonatype、Version)以及Packaging(注意父bundle一定要选pom,子bundle可以选maven plugin)点击Finish。b)
新建项目子bundle。Group Id相同,这样父与子才能在同一个group中。Artifact Id不同(父和任何一个子bundle的该值都必须唯一,因此不同)Version相同Packaging不同(子bundle的Packaging可以是maven plugin或Users&#92:\Users\Juven Xu&mvn -v4、在eclipse中安装maven插件,因为STS中已经继承了maven插件。maven插件的安装是通过eclipse的Help菜单下的Install New Software,然后在打开的窗口中点击Work with右边的“Add”按钮、安装PAX Cursor插件。该插件装完后在eclipse中run configuration中,选择osgi Framework后会出现Pax Runner页面,在project对之间,在最前面添加%JAVA_HOME%&#92
为您推荐:
其他类似问题
maven的相关知识
换一换
回答问题,赢新手礼包相关文章推荐
1.设计应用,将它分解为一些服务接口(普通的基于接口的编程)和这些接口的客户端。
OSGi服务平台向Java提供服务,这些服务使Java成为软件集成和软件开发的首选环境。
探讨了手工方式快速开发OSGI应用的方式,为提高OSGI应用开发速度,提供了方法。...
Android学习
如何利用maven 创建多工成参见《多工成Maven工程的创建》这里仅作扩充
1、创建总控pom文件添加如下内容
xsi:schemaLocation="http://maven.ap...
一、环境准备
1、下载并解压eclipse
2、下载安装jdk,并配置环境变量
打开系统属性面板(桌面上右键单击“我的电脑”→“属性”),点击高级系统设置,再点击环境变量,...
LZ:跪求清空bundle中数据的方法!!!!!!!!!!!!
-------------------------------------------------------------------...
LZ:跪求清空bundle中数据的方法!!!!!!!!!!!!
-----------------------------------------------------...
在上一篇里面写了Activity之间的传值,这一篇里面写写怎么启动一个新的Activity之后,得到它的返回值获得返回值需要重写当前Activity的onActivityResult(int requ...
他的最新文章
他的热门文章
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)如何在eclipse中基于maven创建osgi的bundle_百度知道
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。
如何在eclipse中基于maven创建osgi的bundle
我有更好的答案
其他bundle引用这个HttpService你好。根据你的描述:web bundle 我的实现方法是在OSGi中加入一个jetty bundle,并把自己加入到这个HttpService中
为您推荐:
其他类似问题
注射隆胸的相关知识
换一换
回答问题,赢新手礼包}

我要回帖

更多关于 maven osgi bundle 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信