天天看点

由于Eclipse版本不符造成的异常

前几天把GEF版本从3.0.1升级到了3.1M6,发现以前运行正常的GEF程序现在总出现下面这个异常,例如在我移动一个节点时,或者创建一个新节点时。

由于Eclipse版本不符造成的异常

!ENTRY org.eclipse.ui 4 0 2005-04-19 23:12:55.974

由于Eclipse版本不符造成的异常

!MESSAGE tried to access method org.eclipse.ui.views.properties.PropertySheetEntry.refreshFromRoot()V from class org.eclipse.gef.ui.properties.UndoablePropertySheetEntry

由于Eclipse版本不符造成的异常

!STACK 0

由于Eclipse版本不符造成的异常

java.lang.IllegalAccessError: tried to access method org.eclipse.ui.views.properties.PropertySheetEntry.refreshFromRoot()V from class org.eclipse.gef.ui.properties.UndoablePropertySheetEntry

由于Eclipse版本不符造成的异常

    at org.eclipse.gef.ui.properties.UndoablePropertySheetEntry.access$0(UndoablePropertySheetEntry.java:1)

由于Eclipse版本不符造成的异常

    at org.eclipse.gef.ui.properties.UndoablePropertySheetEntry$1.commandStackChanged(UndoablePropertySheetEntry.java:103)

由于Eclipse版本不符造成的异常

    at org.eclipse.gef.commands.CommandStack.notifyListeners(CommandStack.java:253)

由于Eclipse版本不符造成的异常

    at org.eclipse.gef.commands.CommandStack.execute(CommandStack.java:141)

由于Eclipse版本不符造成的异常

    at org.eclipse.gef.tools.AbstractTool.executeCommand(AbstractTool.java:374)

由于Eclipse版本不符造成的异常

    at org.eclipse.gef.tools.AbstractTool.executeCurrentCommand(AbstractTool.java:386)

由于Eclipse版本不符造成的异常

    at org.eclipse.gef.tools.DragEditPartsTracker.performDrag(DragEditPartsTracker.java:450)

由于Eclipse版本不符造成的异常

    at org.eclipse.gef.tools.DragEditPartsTracker.handleButtonUp(DragEditPartsTracker.java:320)

由于Eclipse版本不符造成的异常

    at org.eclipse.gef.tools.AbstractTool.mouseUp(AbstractTool.java:1035)

由于Eclipse版本不符造成的异常

    at org.eclipse.gef.tools.SelectionTool.mouseUp(SelectionTool.java:545)

由于Eclipse版本不符造成的异常

    at org.eclipse.gef.EditDomain.mouseUp(EditDomain.java:259)

由于Eclipse版本不符造成的异常

    at org.eclipse.gef.ui.parts.DomainEventDispatcher.dispatchMouseReleased(DomainEventDispatcher.java:374)

由于Eclipse版本不符造成的异常

    at org.eclipse.draw2d.LightweightSystem$EventHandler.mouseUp(LightweightSystem.java:548)

由于Eclipse版本不符造成的异常

    at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:136)

由于Eclipse版本不符造成的异常

    at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:82)

由于Eclipse版本不符造成的异常

    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:842)

由于Eclipse版本不符造成的异常

    at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:2908)

由于Eclipse版本不符造成的异常

    at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2541)

由于Eclipse版本不符造成的异常

    at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:1612)

由于Eclipse版本不符造成的异常

    at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1578)

由于Eclipse版本不符造成的异常

    at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:293)

由于Eclipse版本不符造成的异常

    at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:144)

由于Eclipse版本不符造成的异常

    at org.eclipse.ui.internal.ide.IDEApplication.run(IDEApplication.java:102)

由于Eclipse版本不符造成的异常

    at org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:228)

由于Eclipse版本不符造成的异常

    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:333)

由于Eclipse版本不符造成的异常

    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:150)

由于Eclipse版本不符造成的异常

    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

由于Eclipse版本不符造成的异常

    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

由于Eclipse版本不符造成的异常

    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

由于Eclipse版本不符造成的异常

    at java.lang.reflect.Method.invoke(Unknown Source)

由于Eclipse版本不符造成的异常

    at org.eclipse.core.launcher.Main.invokeFramework(Main.java:268)

由于Eclipse版本不符造成的异常

    at org.eclipse.core.launcher.Main.basicRun(Main.java:260)

由于Eclipse版本不符造成的异常

    at org.eclipse.core.launcher.Main.run(Main.java:887)

由于Eclipse版本不符造成的异常

    at org.eclipse.core.launcher.Main.main(Main.java:871)

调试了很久也没找到原因,最后在GEF新闻组里得到了答案,原来GEF3.1M6要求Eclipse的版本在3.1M6或以上,而我正在使用的是Eclipse 3.1M5a,换到3.1M6一试果然OK。

如果你遇到类似的奇怪异常,不妨也先检查一下Eclipse和插件的版本。

继续阅读