如何在jboss中将OSGI与CDI结合使用?

如何在jboss中将OSGI与CDI结合使用?,osgi,cdi,jboss-weld,jboss-eap-6,Osgi,Cdi,Jboss Weld,Jboss Eap 6,我正在试验OSGI和CDI。我想使用CDI注释注册我的OSGI服务,并使用CDI检索已注册的OSGI服务 我发现如下:,它似乎是集成到焊接核心。但是,当我依赖于weld core 1.2.0.Beta1或2.0.0.Final版本时,我找不到上的文档中指定的任何注释 当您想将osgi与CDI结合使用时,这是一种焊接osgi的方式吗?还是我应该用弹簧?(我更喜欢焊接,因为我的AS目前是jboss EAP 6.1) 在哪个依赖项中可以找到文档中指定的注释 谢谢 我还没有做过这方面的工作,我对weld

我正在试验OSGI和CDI。我想使用CDI注释注册我的OSGI服务,并使用CDI检索已注册的OSGI服务

我发现如下:,它似乎是集成到焊接核心。但是,当我依赖于weld core 1.2.0.Beta1或2.0.0.Final版本时,我找不到上的文档中指定的任何注释

当您想将osgi与CDI结合使用时,这是一种焊接osgi的方式吗?还是我应该用弹簧?(我更喜欢焊接,因为我的AS目前是jboss EAP 6.1)

在哪个依赖项中可以找到文档中指定的注释


谢谢

我还没有做过这方面的工作,我对weld osgi知之甚少,但如果你想让osgi和CDI玩得更好,就应该使用它。我很确定它们是独立的JAR,您需要将weld osgi依赖项添加到您的项目中。

目前我不建议使用CDI来处理osgi服务。Weld OSGi库仍处于实验阶段,在OSGi CDI规范发布后很可能会发生变化

此时,企业OSGi专家组正在编写一个新规范OSGiCDI(RFC193)(我是编写此规范的成员之一)。OSGi CDI计划在明年初成为企业OSGi R6的一部分。不幸的是,现在开始使用它还为时过早,参考实现还远未完成。有关即将发布的规范的更多详细信息,请参见我今年在EclipseCon上的一次演示:

我强烈建议使用OSGi服务可用的其他依赖项注入解决方案之一,最好是ApacheFelix依赖项管理器或动态服务。因为这两个库都是直接构建在OSGi服务API上的,所以您不必拖入其他依赖项。编程模型明显不同于CDI,但概念非常相似,因此应该很容易理解

也不要使用Spring,因为它不太适合OSGi(尽管它可以工作)