0
DependencyManager
を私のコンポーネントに注入しようとしています。 BundleContext
が注入されますが、DependencyManager
は(@Inject
)ではありません。私は間違って何をしていますか?dependencymagerの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");
}
}
マネージャの「@Inject」ではなく「@ServiceDependency」アノテーションを試しましたか? –
はい、あります。私は "問題"を発見した。私は依存マネージャの2つのバージョンを使用しました。今私はそれが動作する1つのバージョンに強制した。 – OblongZebra