Sun正致力于以Jigsaw的形式模块化JDK,并暗示它也应该是其他Java开发人员选择的模块格式。唯一值得注意的玩家是NetBeans (和衍生应用程序)。
另一方面,该行业已经围绕OSGi进行了标准化,所有主要的应用程序供应商都将其运行时建立在模块平台上,甚至Sun自己的Glassfish也是如此。甚至有一个NetBeans端口可以使用OSGi作为模块系统,而不是NetBeans自己的模块。甚至连Maven也在努力成为一个OSGi运行时。
仅仅是NIH,许可,还是其他原因?
发布于 2009-12-07 09:59:30
问得好。我的理解是,在某些领域,OSGi远远超出了JVM虚拟机模块所需的范围(以及带来的所有相应的复杂性),而在其他领域,它走得还不够远。所以它们之间有很多重叠之处,但可能还不够。
发布于 2009-12-07 09:58:45
引用http://blogs.oracle.com/mr/entry/jigsaw
然而,
OSGi根本没有与Java语言集成,它是在Java平台之上构建的,而不是从该平台内部构建的。
最后一个问题可以通过fi来解决。Sun现在计划直接与OSGi联盟合作,以便OSGi框架的未来版本可以充分利用JSR294的功能,从而实现与该语言更紧密的集成。
(...)
如果Java平台的未来版本包含特定的Jigsaw c模块系统,那么fi将提供一种将Jigsaw模块迁移到该标准的方法。同时,我们将积极寻求与其他模块系统进行互操作的方法,尤其是与OSGi。
发布于 2009-12-07 10:37:52
Java Posse Podcast 259中的Jigsaw团队概述了项目Jigsaw背后的原理以及它与OSGi的关系。
这些项目并不完全重叠,Jigsaw的引入也不会为OSGi敲响丧钟-- OSGi的范围超出了Jigsaw将尝试的范围。除了OSGi团队所能提供的(语言、类和JVM虚拟机实现的变化)之外,Jigsaw还有更多的东西可以提供。OSGi的设计基于当前的JVM设计-- JVM的改变将使每个人受益。
至少,这是我对what I've read的看法。
https://stackoverflow.com/questions/1858953
复制相似问题