Netbeans平台和OSGI之间的区别

时间:2012-03-05 06:35:07

标签: netbeans

任何人都可以给我Netbeans Plateform和OSGI之间的主要区别吗? Becoz我将使用Java Swing base制作该软件。

1 个答案:

答案 0 :(得分:4)

NetBeans模块系统背后的基本思想:

  • NetBeans允许(部分)在运行时插入或删除模块包。
  • 它自动管理依赖关系,并注意避免循环依赖。
  • 当前版本似乎只允许按需加载模块。
  • NetBeans允许模块的元数据,如版本号,描述......
  • 模块几乎可以是任何东西,包括图像等资源。
  • NetBeans允许区分服务API和服务实现(可以在不同的模块中)。

OSGi功能列表:

  • OSGi允许在应用程序运行时在运行时安装,卸载,停止,启动或替换捆绑包(他们称之为OSGi中的模块......只是清单中包含特殊信息的JAR文件)。
  • 在包级别自动处理依赖关系。 bundle可以声明它导出一个或多个包(默认情况下所有其他包都是私有的),另一个包可以声明它导入这些包。如果给定包的多个版本可用,则包可以声明它使用的版本。
  • OSGi利用每个JAR文件中的META-INF / MANIFEST.MF文件来获取其元数据。该元数据可以包括版本号,描述,导入/导出的包等等。
  • OSGi中的模块是JAR文件。图像(例如)不能是模块。但是捆绑包可能包含可供其他捆绑包使用的图像。
  • 就像NetBeans一样,服务接口和实现是不同的概念,可以使用不同的捆绑包。

因此,通过比较两者的上述功能,我可以说OSGi和NetBeans模块共享很多共性。希望这有帮助。