我正在尝试在 Linux 环境中开发新的 RCP 应用程序,之前我已经在 Windows 环境中开发了 RCP 应用程序。我知道windowsBuilder最适合 RCP 的 GUI 开发。但是,在这里它看起来不像在工作。
以下是其他详细信息:
1. Eclipse 版本:Kepler Release
2. 我的 Windows Builder 插件下载站点:google Eclipse
3. 我的 Linux 环境详细信息:
- 版本 13 (maya) 32 位
- 内核 Linux 3.2.0-23-generic
- 侏儒 3.4.2
我的 rcp 应用程序中示例视图的设计页面的屏幕截图如下:
问题是,在上图中,视图中有 2 个组件,即标签和按钮,但未显示在右侧的视图中。
作为一种解决方法,我尝试从不同的更新站点安装,但它对我不起作用。
更新:
错误视图中的错误日志:
消息:未处理的事件循环异常
堆栈跟踪:
java.lang.IllegalArgumentException: Argument cannot be null
at org.eclipse.swt.SWT.error(SWT.java:4378)
at org.eclipse.swt.SWT.error(SWT.java:4312)
at org.eclipse.swt.SWT.error(SWT.java:4283)
at org.eclipse.swt.graphics.GC.drawImage(GC.java:836)
at org.eclipse.wb.draw2d.Graphics.drawImage(Graphics.java:205)
at org.eclipse.wb.core.gef.part.AbstractComponentEditPart$1.paintClientArea(AbstractComponentEditPart.java:92)
at org.eclipse.wb.draw2d.Figure.paintFigure(Figure.java:533)
at org.eclipse.wb.draw2d.Figure.paint(Figure.java:514)
at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:552)
at org.eclipse.wb.draw2d.Figure.paint(Figure.java:516)
at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:552)
at org.eclipse.wb.draw2d.Figure.paint(Figure.java:516)
at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:552)
at org.eclipse.wb.draw2d.Figure.paint(Figure.java:516)
at org.eclipse.wb.internal.draw2d.FigureCanvas.handlePaint(FigureCanvas.java:188)
at org.eclipse.wb.internal.draw2d.FigureCanvas.access$2(FigureCanvas.java:160)
at org.eclipse.wb.internal.draw2d.FigureCanvas$3.handleEvent(FigureCanvas.java:150)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1392)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1416)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1401)
at org.eclipse.swt.widgets.Control.gtk_expose_event(Control.java:3165)
at org.eclipse.swt.widgets.Composite.gtk_expose_event(Composite.java:726)
at org.eclipse.swt.widgets.Canvas.gtk_expose_event(Canvas.java:176)
at org.eclipse.swt.widgets.Widget.windowProc(Widget.java:2090)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:5467)
at org.eclipse.swt.widgets.Display.windowProc(Display.java:4569)
at org.eclipse.swt.internal.gtk.OS._gtk_main_do_event(Native Method)
at org.eclipse.swt.internal.gtk.OS.gtk_main_do_event(OS.java:8707)
at org.eclipse.swt.widgets.Display.eventProc(Display.java:1243)
at org.eclipse.swt.internal.gtk.OS._g_main_context_iteration(Native Method)
at org.eclipse.swt.internal.gtk.OS.g_main_context_iteration(OS.java:2287)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3361)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1113)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:997)
at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:138)
at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:610)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:567)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:124)
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:354)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:181)
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:636)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:591)
at org.eclipse.equinox.launcher.Main.run(Main.java:1450)