Community
Participate
Working Groups
- create a new Equinox bundle named 'test' - import org.eclipse.equinox.log from CVS HEAD @ Activator @ package test; import org.osgi.framework.BundleActivator; import org.osgi.framework.BundleContext; import org.osgi.service.log.LogService; import org.osgi.util.tracker.ServiceTracker; public class Activator implements BundleActivator { private static ServiceTracker tracker; public void start(BundleContext context) throws Exception { tracker = new ServiceTracker(context, LogService.class.getName(), null); tracker.open(); } public void stop(BundleContext context) throws Exception { if (tracker != null) { tracker.close(); tracker = null; } } } @ MANIFEST.MF @ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Test Plug-in Bundle-SymbolicName: test Bundle-Version: 1.0.0 Bundle-Activator: test.Activator Import-Package: org.osgi.framework;version="1.3.0", org.osgi.service.log;version="1.3.0", org.osgi.util.tracker;version="1.3.1" Eclipse-LazyStart: true @@ Launch framework w/ test and org.eclipse.equinox.log (and their requirements) bundles. @@ osgi> ss Framework is launched. id State Bundle 0 ACTIVE system.bundle_3.3.0.v20061213 1 ACTIVE org.eclipse.equinox.log_1.1.0.qualifier 2 ACTIVE org.eclipse.osgi.services_3.1.100.v20060918 3 RESOLVED test_1.0.0 osgi> start 3 org.osgi.framework.BundleException: Exception in test.Activator.start() of bundle test. at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:1018) at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:974) at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:327) at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:260) at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:252) at org.eclipse.osgi.framework.internal.core.FrameworkCommandProvider._start(FrameworkCommandProvider.java:239) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:589) at org.eclipse.osgi.framework.internal.core.FrameworkCommandInterpreter.execute(FrameworkCommandInterpreter.java:145) at org.eclipse.osgi.framework.internal.core.FrameworkConsole.docommand(FrameworkConsole.java:290) at org.eclipse.osgi.framework.internal.core.FrameworkConsole.console(FrameworkConsole.java:275) at org.eclipse.osgi.framework.internal.core.FrameworkConsole.run(FrameworkConsole.java:210) at java.lang.Thread.run(Thread.java:637) Caused by: java.lang.IllegalArgumentException: org.eclipse.equinox.log.ExtendedLogService.getService() returned a service object that is not an instanceof the service class <missing argument> at org.eclipse.osgi.framework.internal.core.ServiceUse.getService(ServiceUse.java:140) at org.eclipse.osgi.framework.internal.core.ServiceRegistrationImpl.getService(ServiceRegistrationImpl.java:345) at org.eclipse.osgi.framework.internal.core.BundleContextImpl.getService(BundleContextImpl.java:884) at org.osgi.util.tracker.ServiceTracker.addingService(ServiceTracker.java:412) at org.osgi.util.tracker.ServiceTracker$Tracked.trackAdding(ServiceTracker.java:1054) at org.osgi.util.tracker.ServiceTracker$Tracked.trackInitialServices(ServiceTracker.java:916) at org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:323) at org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:267) at test.Activator.start(Activator.java:14) at org.eclipse.osgi.framework.internal.core.BundleContextImpl$2.run(BundleContextImpl.java:999) at java.security.AccessController.doPrivileged(Native Method) at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:993) ... 14 more Nested Exception: java.lang.IllegalArgumentException: org.eclipse.equinox.log.ExtendedLogService.getService() returned a service object that is not an instanceof the service class <missing argument> at org.eclipse.osgi.framework.internal.core.ServiceUse.getService(ServiceUse.java:140) at org.eclipse.osgi.framework.internal.core.ServiceRegistrationImpl.getService(ServiceRegistrationImpl.java:345) at org.eclipse.osgi.framework.internal.core.BundleContextImpl.getService(BundleContextImpl.java:884) at org.osgi.util.tracker.ServiceTracker.addingService(ServiceTracker.java:412) at org.osgi.util.tracker.ServiceTracker$Tracked.trackAdding(ServiceTracker.java:1054) at org.osgi.util.tracker.ServiceTracker$Tracked.trackInitialServices(ServiceTracker.java:916) at org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:323) at org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:267) at test.Activator.start(Activator.java:14) at org.eclipse.osgi.framework.internal.core.BundleContextImpl$2.run(BundleContextImpl.java:999) at java.security.AccessController.doPrivileged(Native Method) at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:993) at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:974) at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:327) at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:260) at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:252) at org.eclipse.osgi.framework.internal.core.FrameworkCommandProvider._start(FrameworkCommandProvider.java:239) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:589) at org.eclipse.osgi.framework.internal.core.FrameworkCommandInterpreter.execute(FrameworkCommandInterpreter.java:145) at org.eclipse.osgi.framework.internal.core.FrameworkConsole.docommand(FrameworkConsole.java:290) at org.eclipse.osgi.framework.internal.core.FrameworkConsole.console(FrameworkConsole.java:275) at org.eclipse.osgi.framework.internal.core.FrameworkConsole.run(FrameworkConsole.java:210) at java.lang.Thread.run(Thread.java:637) Nested Exception: java.lang.IllegalArgumentException: org.eclipse.equinox.log.ExtendedLogService.getService() returned a service object that is not an instanceof the service class <missing argument> at org.eclipse.osgi.framework.internal.core.ServiceUse.getService(ServiceUse.java:140) at org.eclipse.osgi.framework.internal.core.ServiceRegistrationImpl.getService(ServiceRegistrationImpl.java:345) at org.eclipse.osgi.framework.internal.core.BundleContextImpl.getService(BundleContextImpl.java:884) at org.osgi.util.tracker.ServiceTracker.addingService(ServiceTracker.java:412) at org.osgi.util.tracker.ServiceTracker$Tracked.trackAdding(ServiceTracker.java:1054) at org.osgi.util.tracker.ServiceTracker$Tracked.trackInitialServices(ServiceTracker.java:916) at org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:323) at org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:267) at test.Activator.start(Activator.java:14) at org.eclipse.osgi.framework.internal.core.BundleContextImpl$2.run(BundleContextImpl.java:999) at java.security.AccessController.doPrivileged(Native Method) at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:993) at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:974) at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:327) at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:260) at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:252) at org.eclipse.osgi.framework.internal.core.FrameworkCommandProvider._start(FrameworkCommandProvider.java:239) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:589) at org.eclipse.osgi.framework.internal.core.FrameworkCommandInterpreter.execute(FrameworkCommandInterpreter.java:145) at org.eclipse.osgi.framework.internal.core.FrameworkConsole.docommand(FrameworkConsole.java:290) at org.eclipse.osgi.framework.internal.core.FrameworkConsole.console(FrameworkConsole.java:275) at org.eclipse.osgi.framework.internal.core.FrameworkConsole.run(FrameworkConsole.java:210) at java.lang.Thread.run(Thread.java:637)
Created attachment 56273 [details] fix
[contributed patch applied] Thanks Sebastian. This is obviously mid-development so help is very much appreciated.