[jbosstools-dev] [m2e-dev] Fwd: any swt/gtk experts around?

Snjezana Peco snjezana.peco at redhat.com
Tue Sep 2 08:29:06 EDT 2014


Is there a log when you disable SWT debug?

Snjeza

On 9/2/2014 1:59 PM, Igor Fedorenko wrote:
> Well, yes, I did enable SWT debug to see why m2e tests are failing. As
> you can see from the stack trace, Eclipse Workbench fails to start due
> to the SWT problem, which in turn results in test failing later on.
>
> I did some more looking into this and the problem appears to be specific
> to headless X servers (both VNC and Xvfb are affected) on Centos. The
> tests pass on Ubuntu, both in proper GUI session and using Xvfb and in
> Centos GUI session. I am guessing one of GTK libraries shipped with
> Centos misbehaves but don't know how to troubleshoot this further.
>
> --
> Regards,
> Igor
>
> On 2014-09-02, 7:02, Snjezana Peco wrote:
>> I think, in some way, you have set SWT debug options on the server.
>> Check if there is the .options file with the following lines:
>>
>> org.eclipse.ui/debug=true
>> org.eclipse.ui/debug/swtdebug=true
>> org.eclipse.ui/debug/swtdebugglobal=true
>>
>> Snjeza
>>
>> On 8/29/2014 3:34 PM, Fred Bricon wrote:
>>> ---------- Message transféré ----------
>>> De : "Igor Fedorenko" <igor at ifedorenko.com <mailto:igor at ifedorenko.com>>
>>> Date : 29 août 2014 09:32
>>> Objet : [m2e-dev] any swt/gtk experts around?
>>> À : "Maven Integration for Eclipse developers mailing list"
>>> <m2e-dev at eclipse.org <mailto:m2e-dev at eclipse.org>>
>>> Cc :
>>>
>>> Few m2e tests started to fail recently on our CI system. These
>>> particular tests require Eclipse Workbench, which apparently fails to
>>> start due to some SWT/GTK misconfiguration. The same tests pass on my
>>> OSX laptop and Linux desktop, so the problem must be with our CI system,
>>> which runs centos 6.5, btw.
>>>
>>> The CI system has GTK2 libraries installed, but forcing SWT_GTK3=0 does
>>> not make any difference.
>>>
>>> I see the exception below when I enable SWT debug log, but this does not
>>> tell me anything.
>>>
>>> Has anyone seen this kind of problem before? Any suggestions how to
>>> troubleshoot this further?
>>>
>>>
>>>
>>> java.lang.Error
>>>          at org.eclipse.swt.graphics.Device.logProc(Device.java:755)
>>>          at org.eclipse.swt.internal.gtk.OS._gtk_container_add(Native
>>> Method)
>>>          at org.eclipse.swt.internal.gtk.OS.gtk_container_add(OS.java:7142)
>>>          at
>>> org.eclipse.swt.widgets.Composite.createHandle(Composite.java:317)
>>>          at org.eclipse.swt.widgets.Shell.createHandle(Shell.java:727)
>>>          at org.eclipse.swt.widgets.Widget.createWidget(Widget.java:422)
>>>          at org.eclipse.swt.widgets.Control.createWidget(Control.java:666)
>>>          at
>>> org.eclipse.swt.widgets.Scrollable.createWidget(Scrollable.java:153)
>>>          at
>>> org.eclipse.swt.widgets.Decorations.createWidget(Decorations.java:245)
>>>          at org.eclipse.swt.widgets.Shell.<init>(Shell.java:282)
>>>          at org.eclipse.swt.widgets.Shell.<init>(Shell.java:360)
>>>          at
>>> org.eclipse.ui.internal.quickaccess.SearchField.createWidget(SearchField.java:201)
>>>          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:601)
>>>          at
>>> org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:55)
>>>          at
>>> org.eclipse.e4.core.internal.di.InjectorImpl.processAnnotated(InjectorImpl.java:888)
>>>          at
>>> org.eclipse.e4.core.internal.di.InjectorImpl.inject(InjectorImpl.java:120)
>>>          at
>>> org.eclipse.e4.core.internal.di.InjectorImpl.internalMake(InjectorImpl.java:337)
>>>          at
>>> org.eclipse.e4.core.internal.di.InjectorImpl.make(InjectorImpl.java:271)
>>>          at
>>> org.eclipse.e4.core.contexts.ContextInjectionFactory.make(ContextInjectionFactory.java:186)
>>>          at
>>> org.eclipse.e4.ui.internal.workbench.ReflectionContributionFactory.createFromBundle(ReflectionContributionFactory.java:107)
>>>          at
>>> org.eclipse.e4.ui.internal.workbench.ReflectionContributionFactory.doCreate(ReflectionContributionFactory.java:73)
>>>          at
>>> org.eclipse.e4.ui.internal.workbench.ReflectionContributionFactory.create(ReflectionContributionFactory.java:50)
>>>          at
>>> org.eclipse.e4.ui.workbench.renderers.swt.ToolControlRenderer.createWidget(ToolControlRenderer.java:108)
>>>          at
>>> org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.createWidget(PartRenderingEngine.java:983)
>>>          at
>>> org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:662)
>>>          at
>>> org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:766)
>>>          at
>>> org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.access$2(PartRenderingEngine.java:737)
>>>          at
>>> org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$7.run(PartRenderingEngine.java:731)
>>>          at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
>>>          at
>>> org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.createGui(PartRenderingEngine.java:715)
>>>          at
>>> org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$4.handleEvent(PartRenderingEngine.java:289)
>>>          at
>>> org.eclipse.e4.ui.services.internal.events.UIEventHandler$1.run(UIEventHandler.java:40)
>>>          at
>>> org.eclipse.swt.widgets.Synchronizer.syncExec(Synchronizer.java:187)
>>>          at
>>> org.eclipse.ui.internal.UISynchronizer.syncExec(UISynchronizer.java:156)
>>>          at org.eclipse.swt.widgets.Display.syncExec(Display.java:4622)
>>>          at
>>> org.eclipse.e4.ui.internal.workbench.swt.E4Application$1.syncExec(E4Application.java:218)
>>>          at
>>> org.eclipse.e4.ui.services.internal.events.UIEventHandler.handleEvent(UIEventHandler.java:36)
>>>          at
>>> org.eclipse.equinox.internal.event.EventHandlerWrapper.handleEvent(EventHandlerWrapper.java:197)
>>>          at
>>> org.eclipse.equinox.internal.event.EventHandlerTracker.dispatchEvent(EventHandlerTracker.java:197)
>>>          at
>>> org.eclipse.equinox.internal.event.EventHandlerTracker.dispatchEvent(EventHandlerTracker.java:1)
>>>          at
>>> org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)
>>>          at
>>> org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148)
>>>          at
>>> org.eclipse.equinox.internal.event.EventAdminImpl.dispatchEvent(EventAdminImpl.java:135)
>>>          at
>>> org.eclipse.equinox.internal.event.EventAdminImpl.sendEvent(EventAdminImpl.java:78)
>>>          at
>>> org.eclipse.equinox.internal.event.EventComponent.sendEvent(EventComponent.java:39)
>>>          at
>>> org.eclipse.e4.ui.services.internal.events.EventBroker.send(EventBroker.java:81)
>>>          at
>>> org.eclipse.e4.ui.internal.workbench.UIEventPublisher.notifyChanged(UIEventPublisher.java:59)
>>>          at
>>> org.eclipse.emf.common.notify.impl.BasicNotifierImpl.eNotify(BasicNotifierImpl.java:374)
>>>          at
>>> org.eclipse.emf.ecore.util.EcoreEList.dispatchNotification(EcoreEList.java:249)
>>>          at
>>> org.eclipse.emf.common.notify.impl.NotifyingListImpl.addUnique(NotifyingListImpl.java:356)
>>>          at
>>> org.eclipse.emf.common.util.AbstractEList.add(AbstractEList.java:341)
>>>          at
>>> org.eclipse.e4.ui.internal.workbench.ContributionsAnalyzer.processAddition(ContributionsAnalyzer.java:369)
>>>          at
>>> org.eclipse.e4.ui.workbench.renderers.swt.TrimBarRenderer.addTrimContributions(TrimBarRenderer.java:194)
>>>          at
>>> org.eclipse.e4.ui.workbench.renderers.swt.TrimBarRenderer.processContents(TrimBarRenderer.java:166)
>>>          at
>>> org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:674)
>>>          at
>>> org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$6.run(PartRenderingEngine.java:547)
>>>          at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
>>>          at
>>> org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.createGui(PartRenderingEngine.java:531)
>>>          at
>>> org.eclipse.e4.ui.workbench.renderers.swt.WBWRenderer.processContents(WBWRenderer.java:687)
>>>          at
>>> org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:674)
>>>          at
>>> org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:766)
>>>          at
>>> org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.access$2(PartRenderingEngine.java:737)
>>>          at
>>> org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$7.run(PartRenderingEngine.java:731)
>>>          at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
>>>          at
>>> org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.createGui(PartRenderingEngine.java:715)
>>>          at
>>> org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1074)
>>>          at
>>> org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
>>>          at
>>> org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1032)
>>>          at
>>> org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:148)
>>>          at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:636)
>>>          at
>>> org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
>>>          at
>>> org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:579)
>>>          at
>>> org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
>>>          at
>>> org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:135)
>>>          at
>>> org.eclipse.tycho.surefire.osgibooter.UITestApplication.runApplication(UITestApplication.java:31)
>>>          at
>>> org.eclipse.tycho.surefire.osgibooter.AbstractUITestApplication.run(AbstractUITestApplication.java:115)
>>>          at
>>> org.eclipse.tycho.surefire.osgibooter.UITestApplication.start(UITestApplication.java:37)
>>>          at
>>> org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
>>>          at
>>> org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
>>>          at
>>> org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
>>>          at
>>> org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:382)
>>>          at
>>> org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:236)
>>>          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:601)
>>>          at
>>> org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:648)
>>>          at org.eclipse.equinox.launcher.Main.basicRun(Main.java:603)
>>>          at org.eclipse.equinox.launcher.Main.run(Main.java:1465)
>>>          at org.eclipse.equinox.launcher.Main.main(Main.java:1438)
>>>
>>>
>>>
>>>
>>>
>>> --
>>> Regards,
>>> Igor
>>> _______________________________________________
>>> m2e-dev mailing list
>>> m2e-dev at eclipse.org <mailto:m2e-dev at eclipse.org>
>>> To change your delivery options, retrieve your password, or
>>> unsubscribe from this list, visit
>>> https://dev.eclipse.org/mailman/listinfo/m2e-dev
>>>
>>>
>>> _______________________________________________
>>> jbosstools-dev mailing list
>>> jbosstools-dev at lists.jboss.org
>>> https://lists.jboss.org/mailman/listinfo/jbosstools-dev
>>
>>
>> _______________________________________________
>> m2e-dev mailing list
>> m2e-dev at eclipse.org
>> To change your delivery options, retrieve your password, or unsubscribe from this list, visit
>> https://dev.eclipse.org/mailman/listinfo/m2e-dev
>>
> _______________________________________________
> jbosstools-dev mailing list
> jbosstools-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/jbosstools-dev



More information about the jbosstools-dev mailing list