如何将OSGi服务引用用于其他所有类?

时间:2017-01-21 13:25:59

标签: apache-camel osgi esb jbossfuse karaf

我有一个Activator类和一些代码。 我需要在我的bundle激活器类中使用@Autowired。它不起作用。 这是我的捆绑激活类,

public class ProviderActivator implements BundleActivator {

    @Autowired
    public TestingClass testingClass;

    public void start(final BundleContext bundleContext) throws Exception {
        System.out.println("bundle starter!!!!!!!!!!!!!!" +testingClass );
        }
}

testingClass SOP为null。 Spring-context.xml中添加了Spring上下文扫描。

这里我的建议是,

在bundleActivator类加载后注入的bean。

如何预防?为什么启动捆绑类时bean为null?

1 个答案:

答案 0 :(得分:0)

为什么你甚至期望这个工作? Activator类由OSGi Framework实例化,@Autowired不是OSGi功能。