страница свойств в приложении Eclipse RCP случайным образом сбрасывается (страница свойств в приложении Eclipse RCP случайным образом сбрасывается) - PullRequest
0 голосов
/ 29 апреля 2019

В нашем приложении eclipse RCP я обнаружил, что страница свойств случайного затмения исчезает, и мы не можем найти ее основную причину.

-> Представление свойств становится нормальным только после перезапуска затмения: - (

Буду благодарен, если кто-нибудь из вас сможет помочь нам найти «первопричину» / решение

Если я смотрю в окне ErrorLog, я вижу, что есть необработанное исключение цикла событий

просто для дополнительной информации, я помещаю трассировку стека, которую я получил от исключения в ErrorLog.

'''
org.eclipse.swt.SWTException: Widget is disposed
    at org.eclipse.swt.SWT.error(SWT.java:4533)
    at org.eclipse.swt.SWT.error(SWT.java:4448)
    at org.eclipse.swt.SWT.error(SWT.java:4419)
    at org.eclipse.swt.widgets.Widget.error(Widget.java:482)
    at org.eclipse.swt.widgets.Widget.checkWidget(Widget.java:354)
    at org.eclipse.swt.widgets.Control.computeSize(Control.java:660)
    at org.eclipse.ui.part.PageBook$PageBookLayout.computeSize(PageBook.java:51)
    at org.eclipse.swt.widgets.Composite.computeSizeInPixels(Composite.java:215)
    at org.eclipse.swt.widgets.Control.computeSize(Control.java:663)
    at org.eclipse.swt.layout.GridData.computeSize(GridData.java:491)
    at org.eclipse.swt.layout.GridLayout.layout(GridLayout.java:221)
    at org.eclipse.swt.layout.GridLayout.layout(GridLayout.java:197)
    at org.eclipse.swt.widgets.Composite.updateLayout(Composite.java:1363)
    at org.eclipse.swt.widgets.Composite.WM_SIZE(Composite.java:1774)
    at org.eclipse.swt.widgets.Control.windowProc(Control.java:4918)
    at org.eclipse.swt.widgets.Display.windowProc(Display.java:5178)
    at org.eclipse.swt.internal.win32.OS.DefWindowProcW(Native Method)
    at org.eclipse.swt.internal.win32.OS.DefWindowProc(OS.java:2555)
    at org.eclipse.swt.widgets.Scrollable.callWindowProc(Scrollable.java:88)
    at org.eclipse.swt.widgets.Control.WM_WINDOWPOSCHANGED(Control.java:5743)
    at org.eclipse.swt.widgets.Control.windowProc(Control.java:4931)
    at org.eclipse.swt.widgets.Display.windowProc(Display.java:5178)
    at org.eclipse.swt.internal.win32.OS.SetWindowPos(Native Method)
    at org.eclipse.swt.widgets.Widget.SetWindowPos(Widget.java:1482)
    at org.eclipse.swt.widgets.Control.setBoundsInPixels(Control.java:3304)
    at org.eclipse.swt.widgets.Composite.setBoundsInPixels(Composite.java:1079)
    at org.eclipse.swt.widgets.Control.setBoundsInPixels(Control.java:3265)
    at org.eclipse.swt.widgets.Control.setBoundsInPixels(Control.java:3261)
    at org.eclipse.swt.widgets.Control.setBounds(Control.java:3256)
    at org.eclipse.swt.layout.FillLayout.layout(FillLayout.java:219)
    at org.eclipse.swt.widgets.Composite.updateLayout(Composite.java:1363)
    at org.eclipse.swt.widgets.Composite.WM_SIZE(Composite.java:1774)
    at org.eclipse.swt.widgets.Control.windowProc(Control.java:4918)
    at org.eclipse.swt.widgets.Display.windowProc(Display.java:5178)
    at org.eclipse.swt.internal.win32.OS.DefWindowProcW(Native Method)
    at org.eclipse.swt.internal.win32.OS.DefWindowProc(OS.java:2555)
    at org.eclipse.swt.widgets.Scrollable.callWindowProc(Scrollable.java:88)
    at org.eclipse.swt.widgets.Control.WM_WINDOWPOSCHANGED(Control.java:5743)
    at org.eclipse.swt.widgets.Control.windowProc(Control.java:4931)
    at org.eclipse.swt.widgets.Display.windowProc(Display.java:5191)
    at org.eclipse.swt.internal.win32.OS.SetWindowPos(Native Method)
    at org.eclipse.swt.widgets.Widget.SetWindowPos(Widget.java:1482)
    at org.eclipse.swt.widgets.Control.setBoundsInPixels(Control.java:3304)
    at org.eclipse.swt.widgets.Composite.setBoundsInPixels(Composite.java:1079)
    at org.eclipse.swt.widgets.Control.setBoundsInPixels(Control.java:3265)
    at org.eclipse.swt.widgets.Control.setBoundsInPixels(Control.java:3261)
    at org.eclipse.swt.widgets.Control.setBounds(Control.java:3256)
    at org.eclipse.swt.layout.FillLayout.layout(FillLayout.java:204)
    at org.eclipse.swt.widgets.Composite.updateLayout(Composite.java:1363)
    at org.eclipse.swt.widgets.Composite.WM_SIZE(Composite.java:1774)
    at org.eclipse.swt.widgets.Control.windowProc(Control.java:4918)
    at org.eclipse.swt.widgets.Display.windowProc(Display.java:5178)
    at org.eclipse.swt.internal.win32.OS.DefWindowProcW(Native Method)
    at org.eclipse.swt.internal.win32.OS.DefWindowProc(OS.java:2555)
    at org.eclipse.swt.widgets.Scrollable.callWindowProc(Scrollable.java:88)
    at org.eclipse.swt.widgets.Control.WM_WINDOWPOSCHANGED(Control.java:5743)
    at org.eclipse.swt.widgets.Control.windowProc(Control.java:4931)
    at org.eclipse.swt.widgets.Display.windowProc(Display.java:5191)
    at org.eclipse.swt.internal.win32.OS.SetWindowPos(Native Method)
    at org.eclipse.swt.widgets.Widget.SetWindowPos(Widget.java:1482)
    at org.eclipse.swt.widgets.Control.setBoundsInPixels(Control.java:3304)
    at org.eclipse.swt.widgets.Composite.setBoundsInPixels(Composite.java:1079)
    at org.eclipse.swt.widgets.Control.setBoundsInPixels(Control.java:3265)
    at org.eclipse.swt.widgets.Control.setBoundsInPixels(Control.java:3261)
    at org.eclipse.swt.widgets.Control.setBoundsInPixels(Control.java:3337)
    at org.eclipse.swt.widgets.Control.setBounds(Control.java:3333)
    at org.eclipse.swt.custom.CTabFolderLayout.layout(CTabFolderLayout.java:116)
    at org.eclipse.swt.widgets.Composite.updateLayout(Composite.java:1363)
    at org.eclipse.swt.widgets.Composite.WM_SIZE(Composite.java:1774)
    at org.eclipse.swt.widgets.Control.windowProc(Control.java:4918)
    at org.eclipse.swt.widgets.Display.windowProc(Display.java:5178)
    at org.eclipse.swt.internal.win32.OS.DefWindowProcW(Native Method)
    at org.eclipse.swt.internal.win32.OS.DefWindowProc(OS.java:2555)
    at org.eclipse.swt.widgets.Scrollable.callWindowProc(Scrollable.java:88)
    at org.eclipse.swt.widgets.Control.WM_WINDOWPOSCHANGED(Control.java:5743)
    at org.eclipse.swt.widgets.Control.windowProc(Control.java:4931)
    at org.eclipse.swt.widgets.Display.windowProc(Display.java:5191)
    at org.eclipse.swt.internal.win32.OS.EndDeferWindowPos(Native Method)
    at org.eclipse.swt.widgets.Composite.resizeChildren(Composite.java:1007)
    at org.eclipse.swt.widgets.Composite.resizeChildren(Composite.java:973)
    at org.eclipse.swt.widgets.Composite.setResizeChildren(Composite.java:1187)
    at org.eclipse.swt.widgets.Composite.updateLayout(Composite.java:1364)
    at org.eclipse.swt.widgets.Composite.updateLayout(Composite.java:1348)
    at org.eclipse.swt.widgets.Composite.layout(Composite.java:702)
    at org.eclipse.swt.widgets.Composite.layout(Composite.java:653)
    at org.eclipse.swt.widgets.Composite.layout(Composite.java:609)
    at org.eclipse.e4.ui.workbench.renderers.swt.SashLayout.lambda$0(SashLayout.java:96)
    at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:213)
    at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:86)
    at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4428)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1079)
    at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4238)
    at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3817)
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1150)
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:336)
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1039)
    at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:153)
    at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:680)
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:336)
    at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:594)
    at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:148)
    at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:151)
    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:388)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:243)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:653)
    at org.eclipse.equinox.launcher.Main.basicRun(Main.java:590)
    at org.eclipse.equinox.launcher.Main.run(Main.java:1499)

'''

перезапуск Eclipse решает проблему .. но я ищу решение, чтобы решить эту проблему

...