Reproducibly get error org.eclipse.swt.SWTError: Not implemented [multiple displays]

633 views
Skip to first unread message

Aman Sawrup

unread,
Mar 2, 2012, 11:30:46 AM3/2/12
to eclim...@googlegroups.com
java  -Xmx512M  -Dosgi.instance.area.default=@user.home/eclipse-workspaces/wksp1  -Dnailgun.server.port=9091   -jar "/home/aman/eclipse/plugins/org.eclipse.equinox.launcher_1.2.0.v20110502.jar" -debug -clean -refresh -application org.eclim.application_headless
Install location:
    file:/home/aman/eclipse/
Configuration file:
    file:/home/aman/eclipse/configuration/config.ini loaded
Configuration location:
    file:/home/aman/eclipse/configuration/
Framework located:
    file:/home/aman/eclipse/plugins/org.eclipse.osgi_3.7.1.R37x_v20110808-1106.jar
Framework classpath:
    file:/home/aman/eclipse/plugins/org.eclipse.osgi_3.7.1.R37x_v20110808-1106.jar
Debug options:
    file:/home/aman/.options not found
Time to load bundles: 67
Starting application: 6600
2012-03-02 11:27:32,547 INFO  [org.eclim.eclipse.AbstractEclimApplication] Workspace: /home/aman/eclipse-workspaces/wksp1
2012-03-02 11:27:32,548 INFO  [org.eclim.eclipse.AbstractEclimApplication] Starting eclim...
2012-03-02 11:27:33,158 ERROR [org.eclim.eclipse.AbstractEclimApplication] Error starting eclim:
org.eclipse.swt.SWTError: Not implemented [multiple displays]
        at org.eclipse.swt.SWT.error(SWT.java:4308)
        at org.eclipse.swt.widgets.Display.checkDisplay(Display.java:760)
        at org.eclipse.swt.widgets.Display.create(Display.java:896)
        at org.eclipse.swt.graphics.Device.<init>(Device.java:157)
        at org.eclipse.swt.widgets.Display.<init>(Display.java:500)
        at org.eclipse.swt.widgets.Display.<init>(Display.java:491)
        at org.eclipse.swt.widgets.EclimDisplay.<init>(EclimDisplay.java:42)
        at org.eclim.eclipse.EclimApplicationHeadless.onStart(EclimApplicationHeadless.java:73)
        at org.eclim.eclipse.AbstractEclimApplication.start(AbstractEclimApplication.java:109)
        at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
        at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
        at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
        at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:344)
        at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:616)
        at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:622)
        at org.eclipse.equinox.launcher.Main.basicRun(Main.java:577)
        at org.eclipse.equinox.launcher.Main.run(Main.java:1410)
        at org.eclipse.equinox.launcher.Main.main(Main.java:1386)

To work around this error, I usually re-run eclimd or, or sometimes I run headed eclipse just once and exit out of it.

Aman Sawrup

unread,
Mar 2, 2012, 11:46:29 AM3/2/12
to eclim...@googlegroups.com
And often when I try to re-run eclimd, I get the following error in an endless loop:

org.eclipse.core.runtime.CoreException: Plug-in org.eclipse.ui.ide was unable to load class org.eclipse.ui.internal.ide.misc.FileInfoAttributesMatcher.
        at org.eclipse.core.internal.registry.osgi.RegistryStrategyOSGI.throwException(RegistryStrategyOSGI.java:194)
        at org.eclipse.core.internal.registry.osgi.RegistryStrategyOSGI.createExecutableExtension(RegistryStrategyOSGI.java:176)
        at org.eclipse.core.internal.registry.ExtensionRegistry.createExecutableExtension(ExtensionRegistry.java:905)
        at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension(ConfigurationElement.java:243)
        at org.eclipse.core.internal.registry.ConfigurationElementHandle.createExecutableExtension(ConfigurationElementHandle.java:55)
        at org.eclipse.core.internal.resources.FilterDescriptor.createFilter(FilterDescriptor.java:76)
        at org.eclipse.core.internal.resources.Filter.match(Filter.java:44)
        at org.eclipse.core.internal.resources.Filter.filterIncludes(Filter.java:108)
        at org.eclipse.core.internal.resources.Filter.filter(Filter.java:91)
        at org.eclipse.core.internal.resources.Resource.filterChildren(Resource.java:2123)
        at org.eclipse.core.internal.resources.Resource.filterChildren(Resource.java:2085)
        at org.eclipse.core.internal.localstore.UnifiedTree.getLocalList(UnifiedTree.java:351)
        at org.eclipse.core.internal.localstore.UnifiedTree.addChildren(UnifiedTree.java:139)
        at org.eclipse.core.internal.localstore.UnifiedTree.addNodeChildrenToQueue(UnifiedTree.java:245)
        at org.eclipse.core.internal.localstore.UnifiedTree.accept(UnifiedTree.java:111)
        at org.eclipse.core.internal.localstore.FileSystemResourceManager.refreshResource(FileSystemResourceManager.java:920)
        at org.eclipse.core.internal.localstore.FileSystemResourceManager.refresh(FileSystemResourceManager.java:904)
        at org.eclipse.core.internal.resources.Resource.refreshLocal(Resource.java:1657)
        at org.eclipse.core.internal.refresh.RefreshJob.runInWorkspace(RefreshJob.java:167)
        at org.eclipse.core.internal.resources.InternalWorkspaceJob.run(InternalWorkspaceJob.java:38)
        at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)
Caused by: org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter$TerminatingClassNotFoundException: An error occurred while automatically activating bundle org.eclipse.ui.ide (290).
        at org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:122)
        at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass(ClasspathManager.java:462)
        at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.findLocalClass(DefaultClassLoader.java:216)
        at org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:400)
        at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:476)
        at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:429)
        at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:417)
        at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at org.eclipse.osgi.internal.loader.BundleLoader.loadClass(BundleLoader.java:345)
        at org.eclipse.osgi.framework.internal.core.BundleHost.loadClass(BundleHost.java:229)
        at org.eclipse.osgi.framework.internal.core.AbstractBundle.loadClass(AbstractBundle.java:1207)
        at org.eclipse.core.internal.registry.osgi.RegistryStrategyOSGI.createExecutableExtension(RegistryStrategyOSGI.java:174)
        at org.eclipse.core.internal.registry.ExtensionRegistry.createExecutableExtension(ExtensionRegistry.java:905)
        at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension(ConfigurationElement.java:243)
        at org.eclipse.core.internal.registry.ConfigurationElementHandle.createExecutableExtension(ConfigurationElementHandle.java:55)
        at org.eclipse.core.internal.resources.FilterDescriptor.createFilter(FilterDescriptor.java:76)
        at org.eclipse.core.internal.resources.Filter.match(Filter.java:44)
        at org.eclipse.core.internal.resources.Filter.filterExcludes(Filter.java:139)
        at org.eclipse.core.internal.resources.Filter.filter(Filter.java:92)
        at org.eclipse.core.internal.resources.Resource.filterChildren(Resource.java:2123)
        at org.eclipse.core.internal.resources.Resource.filterChildren(Resource.java:2085)
        at org.eclipse.core.internal.localstore.UnifiedTree.getLocalList(UnifiedTree.java:351)
        at org.eclipse.core.internal.localstore.UnifiedTree.addChildren(UnifiedTree.java:139)
        at org.eclipse.core.internal.localstore.UnifiedTree.addNodeChildrenToQueue(UnifiedTree.java:245)
        at org.eclipse.core.internal.localstore.UnifiedTree.accept(UnifiedTree.java:111)
        at org.eclipse.core.internal.localstore.FileSystemResourceManager.refreshResource(FileSystemResourceManager.java:920)
        at org.eclipse.core.internal.localstore.FileSystemResourceManager.refresh(FileSystemResourceManager.java:904)
        at org.eclipse.core.internal.localstore.FileSystemResourceManager.refreshRoot(FileSystemResourceManager.java:951)
        at org.eclipse.core.internal.localstore.FileSystemResourceManager.refresh(FileSystemResourceManager.java:897)
        ... 4 more
Caused by: org.osgi.framework.BundleException: Exception in org.eclipse.ui.internal.ide.IDEWorkbenchPlugin.start() of bundle org.eclipse.ui.ide.
        at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:734)
        at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:683)
        at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:381)
        at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:299)
        at org.eclipse.osgi.framework.util.SecureAction.start(SecureAction.java:440)
        at org.eclipse.osgi.internal.loader.BundleLoader.setLazyTrigger(BundleLoader.java:268)
        at org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:107)
        ... 33 more
Caused by: java.lang.NullPointerException
        at org.eclipse.swt.widgets.Display.asyncExec(Display.java:714)
        at org.eclipse.ui.internal.ide.IDEWorkbenchPlugin.createProblemsViews(IDEWorkbenchPlugin.java:394)
        at org.eclipse.ui.internal.ide.IDEWorkbenchPlugin.start(IDEWorkbenchPlugin.java:351)
        at org.eclipse.osgi.framework.internal.core.BundleContextImpl$1.run(BundleContextImpl.java:711)
        at java.security.AccessController.doPrivileged(Native Method)
        at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:702)
        ... 39 more

Eric Van Dewoestine

unread,
Mar 2, 2012, 1:12:00 PM3/2/12
to eclim...@googlegroups.com

I'm pretty sure this issue has been fixed on the git master branch.

--
eric

lexx.vir

unread,
Jan 22, 2013, 3:03:56 AM1/22/13
to eclim...@googlegroups.com
Hello Eric,

I can confirm that this error is appear in current release of eclim (1.7.13).
I enough often reproduce it.

My environment is:
$ uname -a
Linux desktop 2.6.32-45-generic #102-Ubuntu SMP Wed Jan 2 21:53:06 UTC 2013 i686 GNU/Linux

Ubuntu 10.04
Eclipse 3.7 from website (not from ubuntu's repository)

$ java -version
java version "1.6.0_26"
Java(TM) SE Runtime Environment (build 1.6.0_26-b03)
Java HotSpot(TM) Server VM (build 20.1-b02, mixed mode)

Thank you,
Alexey.

Eric Van Dewoestine

unread,
Feb 3, 2013, 1:42:17 AM2/3/13
to eclim...@googlegroups.com
On 2013-01-22 00:03:56, lexx.vir wrote:
> Hello Eric,
>
> I can confirm that this error is appear in current release of eclim
> (1.7.13).
> I enough often reproduce it.

Do you have set of steps that can reliably reproduce it?

Ultimately this shouldn't be a problem any more with juno and eclim
2.x, but if I have a way to trigger this issue then I'll take a look
into trying to find a fix.

> My environment is:
> $ uname -a
> Linux desktop 2.6.32-45-generic #102-Ubuntu SMP Wed Jan 2 21:53:06 UTC 2013
> i686 GNU/Linux
>
> Ubuntu 10.04
> Eclipse 3.7 from website (not from ubuntu's repository)

Is it eclipse 3.7 and not 3.7.1 or 3.7.2? What is the output of
:PingEclim?

I just want to make sure that if you do provide a way for me to
reproduce this, that I attempt to do so on the proper eclipse version.
> --
> You received this message because you are subscribed to the Google Groups "eclim-user" group.
> To view this discussion on the web visit https://groups.google.com/d/msg/eclim-user/-/WgtwKl0Sn6EJ.
> To post to this group, send email to eclim...@googlegroups.com.
> To unsubscribe from this group, send email to eclim-user+...@googlegroups.com.
> For more options, visit this group at http://groups.google.com/group/eclim-user?hl=en.
>

--
eric

Basant Kukreja

unread,
Jul 16, 2014, 2:49:03 PM7/16/14
to eclim...@googlegroups.com
I am having the same problem. I tried eclimd 2.3.4 with eclipise 4.4 and got the same problem. Did you find
workaround for this problem.

Here is top 5 frames of the stack trace.
Starting application: 7550

org.eclipse.core.runtime.CoreException: Plug-in org.eclipse.ui.ide was unable to load class org.eclipse.ui.internal.ide.misc.FileInfoAttributesMatcher.
        at org.eclipse.core.internal.registry.osgi.RegistryStrategyOSGI.throwException(RegistryStrategyOSGI.java:194)
        at org.eclipse.core.internal.registry.osgi.RegistryStrategyOSGI.createExecutableExtension(RegistryStrategyOSGI.java:176)
        at org.eclipse.core.internal.registry.ExtensionRegistry.createExecutableExtension(ExtensionRegistry.java:905)
        at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension(ConfigurationElement.java:243)

Have you found any workaround for this problem?

Basant Kukreja

unread,
Jul 16, 2014, 2:52:44 PM7/16/14
to eclim...@googlegroups.com


On Saturday, February 2, 2013 10:42:17 PM UTC-8, Eric Van Dewoestine wrote:
Do you have set of steps that can reliably reproduce it?

Ultimately this shouldn't be a problem any more with juno and eclim
2.x, but if I have a way to trigger this issue then I'll take a look
into trying to find a fix.
Unfortunately problem still persist in juno and eclim 2.x (eclim 2.3.4)
I am using JDK 1.7.0_51

Basant Kukreja

unread,
Jul 16, 2014, 3:24:37 PM7/16/14
to eclim...@googlegroups.com
I solved this issue. I think this is a problem with X display remote message. If eclimd tries to open up a warning message window, eclimd sends this error.
Note that DISPLAY variable was setup correctly and terminal was able to windows like xterm/gvim etc.

I logged into the machine using nomachine and started eclimd. Fixed the warning issue which it was complaining and then eclimd started without any issues.

After that eclimd worked in regular ssh console too.

Thanks,
Basant.

Eric Van Dewoestine

unread,
Jul 20, 2014, 12:15:18 PM7/20/14
to eclim...@googlegroups.com
On 2014-07-16 12:24:36, Basant Kukreja wrote:
> I solved this issue. I think this is a problem with X display remote
> message. If eclimd tries to open up a warning message window, eclimd sends
> this error.
> Note that DISPLAY variable was setup correctly and terminal was able to
> windows like xterm/gvim etc.
>
> I logged into the machine using nomachine and started eclimd. Fixed the
> warning issue which it was complaining and then eclimd started without any
> issues.
>
> After that eclimd worked in regular ssh console too.
>
> Thanks,
> Basant.

Interesting, thank you for the updated. Do you recall what the warning
message was? At one point, when updating eclim for the eclipse 4.x e4
apis, I tried to suppress all gui modals/windows, not just the root
window, but I was unable to get that working. I'll make a note to try
that again since more than one of eclim's dependencies have a knack for
throwing up dialogs (adt, scalaide, pydev) at startup.

> On Wednesday, July 16, 2014 11:52:44 AM UTC-7, Basant Kukreja wrote:
> >
> >
> >
> > On Saturday, February 2, 2013 10:42:17 PM UTC-8, Eric Van Dewoestine wrote:
> >>
> >> Do you have set of steps that can reliably reproduce it?
> >>
> >> Ultimately this shouldn't be a problem any more with juno and eclim
> >> 2.x, but if I have a way to trigger this issue then I'll take a look
> >> into trying to find a fix.
> >>
> > Unfortunately problem still persist in juno and eclim 2.x (eclim 2.3.4)
> > I am using JDK 1.7.0_51
> >

--
eric

Basant Kukreja

unread,
Sep 12, 2014, 12:50:46 PM9/12/14
to eclim...@googlegroups.com
It started working but now I rebooted the box and the problem appeared again. Now it doesn't seem to be related with X display.
Here is the message :

Starting application: 8074

org.eclipse.core.runtime.CoreException: Plug-in org.eclipse.ui.ide was unable to load class org.eclipse.ui.internal.ide.misc.FileInfoAttributesMatcher.
    at org.eclipse.core.internal.registry.osgi.RegistryStrategyOSGI.throwException(RegistryStrategyOSGI.java:194)
    at org.eclipse.core.internal.registry.osgi.RegistryStrategyOSGI.createExecutableExtension(RegistryStrategyOSGI.java:176)
    at org.eclipse.core.internal.registry.ExtensionRegistry.createExecutableExtension(ExtensionRegistry.java:905)
    at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension(ConfigurationElement.java:243)
    at org.eclipse.core.internal.registry.ConfigurationElementHandle.createExecutableExtension(ConfigurationElementHandle.java:55)
    at org.eclipse.core.internal.resources.FilterDescriptor.createFilter(FilterDescriptor.java:76)
    at org.eclipse.core.internal.resources.Filter.match(Filter.java:59)
    at org.eclipse.core.internal.resources.Filter.filterIncludes(Filter.java:126)
    at org.eclipse.core.internal.resources.Filter.filter(Filter.java:109)
    at org.eclipse.core.internal.resources.Resource.filterChildren(Resource.java:2171)
    at org.eclipse.core.internal.resources.Resource.filterChildren(Resource.java:2133)
    at org.eclipse.core.internal.localstore.UnifiedTree.getLocalList(UnifiedTree.java:350)
    at org.eclipse.core.internal.localstore.UnifiedTree.addChildren(UnifiedTree.java:138)
    at org.eclipse.core.internal.localstore.UnifiedTree.addNodeChildrenToQueue(UnifiedTree.java:244)
    at org.eclipse.core.internal.localstore.UnifiedTree.accept(UnifiedTree.java:110)

    at org.eclipse.core.internal.localstore.FileSystemResourceManager.refreshResource(FileSystemResourceManager.java:920)
    at org.eclipse.core.internal.localstore.FileSystemResourceManager.refresh(FileSystemResourceManager.java:904)
    at org.eclipse.core.internal.localstore.FileSystemResourceManager.refreshRoot(FileSystemResourceManager.java:951)
    at org.eclipse.core.internal.localstore.FileSystemResourceManager.refresh(FileSystemResourceManager.java:897)
    at org.eclipse.core.internal.resources.Resource.refreshLocal(Resource.java:1705)

    at org.eclipse.core.internal.refresh.RefreshJob.runInWorkspace(RefreshJob.java:167)
    at org.eclipse.core.internal.resources.InternalWorkspaceJob.run(InternalWorkspaceJob.java:38)
    at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)
Caused by: java.lang.ClassNotFoundException: An error occurred while automatically activating bundle org.eclipse.ui.ide (258).
    at org.eclipse.osgi.internal.hooks.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:116)
    at org.eclipse.osgi.internal.loader.classpath.ClasspathManager.findLocalClass(ClasspathManager.java:531)
    at org.eclipse.osgi.internal.loader.ModuleClassLoader.findLocalClass(ModuleClassLoader.java:324)
    at org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:311)
    at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:386)
    at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:336)
    at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:328)
    at org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:160)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
    at org.eclipse.osgi.internal.framework.EquinoxBundle.loadClass(EquinoxBundle.java:568)
    at org.eclipse.core.internal.registry.osgi.RegistryStrategyOSGI.createExecutableExtension(RegistryStrategyOSGI.java:174)
    ... 21 more

Caused by: org.osgi.framework.BundleException: Exception in org.eclipse.ui.internal.ide.IDEWorkbenchPlugin.start() of bundle org.eclipse.ui.ide.
    at org.eclipse.osgi.internal.framework.BundleContextImpl.startActivator(BundleContextImpl.java:792)
    at org.eclipse.osgi.internal.framework.BundleContextImpl.start(BundleContextImpl.java:721)
    at org.eclipse.osgi.internal.framework.EquinoxBundle.startWorker0(EquinoxBundle.java:936)
    at org.eclipse.osgi.internal.framework.EquinoxBundle$EquinoxModule.startWorker(EquinoxBundle.java:319)
    at org.eclipse.osgi.container.Module.doStart(Module.java:571)
    at org.eclipse.osgi.container.Module.start(Module.java:439)
    at org.eclipse.osgi.framework.util.SecureAction.start(SecureAction.java:454)
    at org.eclipse.osgi.internal.hooks.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:107)
    ... 31 more
Caused by: java.lang.NullPointerException
    at org.eclipse.swt.widgets.Display.asyncExec(Display.java:728)
    at org.eclipse.ui.internal.ide.IDEWorkbenchPlugin.createProblemsViews(IDEWorkbenchPlugin.java:393)
    at org.eclipse.ui.internal.ide.IDEWorkbenchPlugin.start(IDEWorkbenchPlugin.java:351)
    at org.eclipse.osgi.internal.framework.BundleContextImpl$3.run(BundleContextImpl.java:771)
    at org.eclipse.osgi.internal.framework.BundleContextImpl$3.run(BundleContextImpl.java:1)
    at java.security.AccessController.doPrivileged(Native Method)
    at org.eclipse.osgi.internal.framework.BundleContextImpl.startActivator(BundleContextImpl.java:764)
    ... 38 more

----------------------------------------------

So there is something going on which I don't understand. I don't really know why it doesn't able to find the class? Is it something related to oracle jdk/open jdk on
ubuntu? Above message is with Oracle jdk.

- Basant.


Basant Kukreja

unread,
Sep 12, 2014, 1:15:30 PM9/12/14
to eclim...@googlegroups.com
It started working again. But there are many caveats which I don't understand.

First of all I need to use Oracle java else it doesn't work.
Second I have to start eclipse, let it initialize, then close it. Then when I start eclimd, it works, it may be just coincidence.

I am not even confident if I stop eclimd and restarts it, it will work again. Any trick how to diagnose where the problem is?

- Basant.



Reply all
Reply to author
Forward
0 new messages