整合Guice和OSGi的现状如何?即暴露来自Guice的OSGi服务,注入它们等。
Peaberry's main page提到“Guice主干(将成为2.0)”,但1.2似乎是最新的,因为它修复了http://code.google.com/p/peaberry/issues/detail?id=58。它的作者已经切换Sisu,但它似乎尚未发布。还有其他人吗?
答案 0 :(得分:5)
Guice 3.0和Peaberry 1.2的集成目前正如预期的那样发挥作用。只是页面似乎有点过时sind上面提到的片段指的是已被取代的Guice 2.0主干。
当您查看存储库历史记录here时,针对1.2 Peaberry版本修复了您的引用错误。
Sisu目前正在开发并且它解决了(至少我如何解释它)Guice + Peaberry + OSGi目前存在的一些其他问题(例如自动组件扫描和发现),但还没有准备好。
在我看来,Peaberry解决了DI和OSGi的相同集成案例,这些案例也由Spring Dynamic Modules(现在Eclipse Gemini Blueprint)解决,因此非常有用。此外,我认为Peaberry项目不一定会被放弃以支持sisu。
如果您坚持OSGi的想法,即开发通过服务连接但又想在其中使用DI的独立捆绑包,那么Peaberry目前提供您所需的一切。
我目前面临的唯一问题就是官方的guice-servlet模块默认情况下似乎没有使用OSGi HttpService
。