您的位置:首页 > 编程语言 > Java开发

OSGi与Maven、Eclipse PlugIn的区别

2014-11-04 00:00 239 查看
摘要: OSGi与Maven、Eclipse PlugIn的区别

osgi 的框架 apache felix equinox

osgi的bundle 、 maven 的 module 、 Eclipse 的 PlugIn 的区别。。。。

OSGi与Maven

Maven也具有模块化系统的特征;但是它只是一个编译时工具,而不是运行时框架。Maven并不是OSGi的竞争者,而是OSGi的一个补充。

通过在pom.xml中指定所依赖jar包的名称、版本号,Maven就能在编译时自动下载正确的jar文件,并部署到classpath中。

然而Maven并没有解决JAR文件的缺点:

同样使用全局的classpath;

同样不能做到包级别的信息隐藏;

而且pom.xml的格式与OSGi格式并不兼容。所以,如果用Maven编译OSGi系统,通常需要定义两遍metadata:

在pom.xml中定义Maven的metadata
在MANIFEST.MF中定义OSGi的metadata

OSGi与Eclipse PlugIn

Eclipse平台是基于Equinox的,而Equinox就是OSGi的实现之一。
而在Eclipse3.0之前,却使用的是另一套模块系统;Eclipse PlugIn是指包含plugin.xml的文件夹;plugin.xml中定义的metadata和OSGi的MANIFEST.MF非常类似:包含plugin的name、vendor、version、导出包、required plugin。
关键的区别在于:Eclipse PlugIn定义的依赖并不是包级别,而是整个plugin。
Eclipse Plugin的最大缺陷是,不能动弹地安装、更新、卸载。

来自:http://www.myexception.cn/operating-system/1405867.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐