OSGi注入依赖管理器(OSGi injection of dependencymanager)

编程入门 行业动态 更新时间:2024-10-26 16:26:43
OSGi注入依赖管理器(OSGi injection of dependencymanager)

我试图将DependencyManager注入我的组件。 注入BundleContext但是DependencyManager不是( @Inject )。 我究竟做错了什么?

import org.apache.felix.dm.DependencyManager;
import org.apache.felix.dm.annotation.api.Component;
import org.apache.felix.dm.annotation.api.Init;
import org.apache.felix.dm.annotation.api.Inject;
import org.apache.felix.dm.annotation.api.Start;
import org.osgi.framework.BundleContext;

@Component
public class InjectionExample
{
    @Inject
    BundleContext bundleContext;

    @Inject
    DependencyManager manager;

    @Init
    void init()
    {
        System.out.println("Bundle Context: " + bundleContext);
        System.out.println("Manager: " + manager);
    }

    @Start
    void start()
    {
        System.out.println("start");
    }
}

I am trying to inject the DependencyManager into my component. The BundleContext is injected but the DependencyManager is not (@Inject). What am I doing wrong?

import org.apache.felix.dm.DependencyManager;
import org.apache.felix.dm.annotation.api.Component;
import org.apache.felix.dm.annotation.api.Init;
import org.apache.felix.dm.annotation.api.Inject;
import org.apache.felix.dm.annotation.api.Start;
import org.osgi.framework.BundleContext;

@Component
public class InjectionExample
{
    @Inject
    BundleContext bundleContext;

    @Inject
    DependencyManager manager;

    @Init
    void init()
    {
        System.out.println("Bundle Context: " + bundleContext);
        System.out.println("Manager: " + manager);
    }

    @Start
    void start()
    {
        System.out.println("start");
    }
}

                

最满意答案

我发现了“问题”。 在我的项目中使用了2个不同版本的依赖管理器。 在强制使用一个版本后,它可以工作。

I found the "problem". In my project 2 different versions of the the dependency manager where used. After forcing usage of one version it works.

更多推荐

本文发布于:2023-07-19 01:03:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1169653.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:管理器   OSGi   dependencymanager   injection

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!