很久以前我已经在OSGI环境中使用Spring了。此时有一个名为Spring Dynamic Modules的子项目是两个框架集成的第一个地址。
几年后回到现场,情况不再明显(对我来说)。 Spring Dynamic Modules已经迁移到Blueprint,有两个主要的实现Aries和Gemini,其中第一个似乎更多地与Spring竞争而不是补充它,而后者似乎很小并且发布周期非常少。
官方的Spring页面根本没有关于OSGI的文档。
那么有更好的信誉/知道如何在春天帮助并告诉我当前(11/2014)"官方"或者将Spring应用程序集成到OSGI环境中的首选方法?
非常感谢&最好的祝福 拉贝
答案 0 :(得分:3)
官方根据谁?没有人有资格就此给出“官方”答案,只有常见做法。
正如您所说,Eclipse Gemini Blueprint的实现是放弃软件。 Apache Aries实现虽然是一个实时项目,但它与Spring的竞争并不是蓝图规范的洁净室实现,而是没有引用旧的Spring源代码。
因此,我建议迁移到Aries Blueprint实施,作为最实用和明智的前进方式。
答案 1 :(得分:1)
Spring现在还没有正式支持OSGi。 Spring EBR存储库已经关闭(我猜他们已经说过会关闭它)并且一些公司接管了Virgo EBR repo中的内容。我不知道它是否还活着。
如果您有选择,请不要在OSGi中使用Spring。这是一项伟大的技术,但它被设计为在单一系统中运行良好。有一篇很好的博客文章,为什么不在OSGi中使用Spring,蓝图和类似技术:http://blog.osgi.org/2014/09/how-should-i-use-guicespringblueprint.html