Your bundle has to import org.osgi.framework (i.e., Import-Package: org.osgi.framework) in its manifest...

Bundles have to import every package they use except for java.* packages...to simplify this task you can use our maven-bundle-plugin.

-> richard

asaf.lahav wrote:
Hi all,

I installed a bundle in which I have a custom activator class.

The problem is that when I attempt to use the context handle [e.g.
context.getBundle();] I'm getting as input parameter I get the following
exception:

java.lang.NoClassDefFoundError: org/osgi/framework/BundleContext

      at example.activators.MyActivator.start(MyActivator.java:41)ERROR:
Error starting reference:file:c:/Development/OGSi/OSGiTestBundle
(org.osgi.framework.BundleException: Activator start error.)

      at
org.apache.felix.framework.util.SecureAction.startActivator(SecureAction.jav
a:509)

      at org.apache.felix.framework.Felix._startBundle(Felix.java:1260)

      at org.apache.felix.framework.Felix.startBundle(Felix.java:1201)

      at
org.apache.felix.framework.Felix.setFrameworkStartLevel(Felix.java:807)

      at
org.apache.felix.framework.StartLevelImpl.run(StartLevelImpl.java:256)

      at java.lang.Thread.run(Unknown Source)

As org/osgi/framework/BundleContext part of the framework, I can't say I
understand the reason.

Am I supposed to explicitly specify Felix.jar in the bundle class-path?
Thanks in advance,

Asaf


Reply via email to