all annotations that are provided by the OSGi Workinggroup (in
the name space of org.osgi.*.annotations) expect the ones for the
CDI Speci, are compile time annotations. They must be part of our
Targetplatform/ Build Dependencies and might be used by your build
tooling. This means that they are not required at runtime and
must not be deployed (which is what the failing requirement is
saying).
Regarding your second question: Do you provide a Configuration
via ConfigurationAdmin or Configurator for this Component?
Hope this helps,
Jürgen.
Am 24/02/2022 um 05:26 schrieb Kanika
Khattar:
Hi All,
While using OSGI Annotations in my project, I am getting a few
issues. It will be great if you can help me with the same.
!MESSAGE FrameworkEvent ERROR
!STACK 0
org.osgi.framework.BundleException: Could not resolve
module: org.osgi.service.metatype.annotations [219] Unresolved requirement: Require-Capability:
osgi.compile.time.only;
filter:="(&(must.not.resolve=*)(!(must.not.resolve=*)))"
at
org.eclipse.osgi.container.Module.start(Module.java:463)
at
org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel$2.run(ModuleContainer.java:1845)
at
org.eclipse.osgi.internal.framework.EquinoxContainerAdaptor$1$1.execute(EquinoxContainerAdaptor.java:136)
at
org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1838)
at
org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1781)
at
org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.doContainerStartLevel(ModuleContainer.java:1743)
at
org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1665)
at
org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1)
at
org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:234)
at
org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:345)
at
org.eclipse.osgi.container.Module.start(Module.java:463)
at
org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel$2.run(ModuleContainer.java:1845)
at
org.eclipse.osgi.internal.framework.EquinoxContainerAdaptor$1$1.execute(EquinoxContainerAdaptor.java:136)
at
org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1838)
at
org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1781)
at
org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.doContainerStartLevel(ModuleContainer.java:1743)
at
org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1665)
at
org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1)
at
org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:234)
at
org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:345)
2. Activate method gets called when Configuration
Policy is set to OPTIONAL. When Configuration Policy is
REQUIRE, the activate method is not called.