0
Я пытаюсь ввести DependencyManager
в свой компонент. Вводится BundleContext
, но DependencyManager
не является (@Inject
). Что я делаю не так?OSGi инъекция зависимого менеджера
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");
}
}
Вы пытались использовать аннотацию «@ServiceDependency», а не «@Inject» для менеджера? –
Да, у меня есть. Я нашел «проблему». Я использовал две версии менеджера зависимостей. Теперь я заставил одну версию работать. – OblongZebra