OSGi Bundle Repository(OBR)

这个东西其实在以前的OSCAR项目中是有的,而现在处于Apache沙箱中OSGi R4的实现Felix也准备构建这个了,构建OBR其实和构建Maven 2、Ivy这些的Repository没什么区别,解决的都是方便其他的使用者通过仓库直接下到所需要的东西(OBR中提供的是Bundle、Maven2、Ivy中是jar),最大的好处在于下载的Bundle或jar会根据其元数据信息去下载其所依赖的其他的Bundle或jar,这就大大方便了使用者了。
构建OBR自然就对OSGi实现框架提出了要求,框架中必然需要有支持远程下载的方式的命令(如FELIX现在定义的obr),而在OSGi的规范中目前是没有这部分的东西的,也许在将来会考虑加上吧,这个无所谓,只要有框架去实现了,其他的框架即使没实现,也可以通过安装上这个Bundle来获取这样的功能,其实我觉得这个就像我以前所想的,一站式解决方案,很方便,呵呵,假设我以后需要安装一个CMS,就可以象现在N多的linux中敲一个apt -get bluedavy-cms,哈哈,多爽,当然,最好就是还有网站提供能够让我备份我系统中所有软件的配置,以后我要装机器就只要跑到这个网站选择bluedavy的windows 2003或者bluedavy的Ubuntu,只要网络允许的情况下很快就可以装好了,呵呵......
另外一个问题是自动解决依赖的问题,大家知道,jar包中是没有写需要依赖其他什么jar包的信息的,Maven 2、Ivy为了解决这个问题都是在外部增加了xml文件来描述jar包的依赖,这个带来的好处就是假设我们现在要在项目中使用hibernate,就只需要直接从Maven 2、Ivy的仓库中直接下Hibernate就可以了,而至于hibernate所需要依赖的包Maven 2和Ivy则会自动的下载过来,对于OSGi的Bundle来说就比较好办了,因为OSGi的Bundle本来就在Manifest.MF文件中描述了当前Bundle的依赖信息,所以对于构建OBR来说不会太困难,而Maven 2、Ivy的仓库在构建的时候的麻烦就在于手动写那个标识jar包元数据的xml文件。
OBR的构建还是很有必要的,鉴于FELIX的进度,TPF将先实现远程下载Bundle的这个功能.......

posted on 2006-08-27 19:16 BlueDavy 阅读(3495) 评论(1)  编辑  收藏 所属分类: OSGi、SOA、SCA

评论

# re: OSGi Bundle Repository(OBR) 2008-05-08 22:06 gembin

OSGi 的Deployment Admin 怎么用?

用的是FELIX的Impl

FileInputStream in= new FileInputStream(bundleLocation);
DeploymentPackage dPackage=deployAdmin.installDeploymentPackage(in);

却得到各DeploymentException ERROR CODE=451 (Missing mandatory manifest header)

但是直接在Console Install 这个Bundle 没任何错误。

不知道怎么回事


  回复  更多评论   


只有注册用户登录后才能发表评论。


网站导航:
 

公告

 









feedsky
抓虾
google reader
鲜果

导航

<2008年5月>
27282930123
45678910
11121314151617
18192021222324
25262728293031
1234567

统计

随笔分类

随笔档案

文章档案

Blogger's

搜索

最新评论

阅读排行榜

评论排行榜