尝试使用 Vaadin Designer 7 打开 .html 文件时出现 NullPointerException

NullPointerException when trying to open a .html file with Vaadin Designer 7

我使用 Eclipse 2018_09 和 Vaadin 8。我刚刚直接创建了一个干净的 Vaadin 项目“myapplication”。当我创建 Vaadin 设计器文件“testdesigne.html”并尝试打开它时,设计器崩溃并且文件将关闭。它首先尝试加载视图并在 ~5 秒后崩溃。

当我打开 Eclipse 错误日志视图时,我可以看到以下 2 个问题:

从插件调用代码时出现问题:“org.eclipse.ui.workbench”。


java.lang.NullPointerException at com.vaadin.designer.eclipse.views.HierarchyOutlineView.dispose(HierarchyOutlineView.java:470) at com.vaadin.designer.eclipse.editors.VaadinEditorPart.dispose(VaadinEditorPart.java:422) at org.eclipse.ui.part.MultiPageEditorPart.run(MultiPageEditorPart.java:1014) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45) at org.eclipse.ui.part.MultiPageEditorPart.disposePart(MultiPageEditorPart.java:1010) at org.eclipse.ui.part.MultiPageEditorPart.dispose(MultiPageEditorPart.java:507) at com.vaadin.designer.eclipse.editors.VaadinEditor.dispose(VaadinEditor.java:328) at org.eclipse.ui.internal.e4.compatibility.CompatibilityPart.invalidate(CompatibilityPart.java:264) at org.eclipse.ui.internal.e4.compatibility.CompatibilityPart.destroy(CompatibilityPart.java:424) 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.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:58) at org.eclipse.e4.core.internal.di.InjectorImpl.processAnnotated(InjectorImpl.java:1001) at org.eclipse.e4.core.internal.di.InjectorImpl.processAnnotated(InjectorImpl.java:966) at org.eclipse.e4.core.internal.di.InjectorImpl.uninject(InjectorImpl.java:200) at org.eclipse.e4.core.internal.di.Requestor.uninject(Requestor.java:175) at org.eclipse.e4.core.internal.contexts.ContextObjectSupplier$ContextInjectionListener.update(ContextObjectSupplier.java:87) at org.eclipse.e4.core.internal.contexts.TrackableComputationExt.update(TrackableComputationExt.java:114) at org.eclipse.e4.core.internal.contexts.EclipseContext.removeListenersTo(EclipseContext.java:492) at org.eclipse.e4.core.contexts.ContextInjectionFactory.uninject(ContextInjectionFactory.java:175) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeRemoveGui(PartRenderingEngine.java:967) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.access(PartRenderingEngine.java:886) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:881) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.removeGui(PartRenderingEngine.java:865) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.subscribeTopicToBeRendered(PartRenderingEngine.java:186) 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.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:58) at org.eclipse.e4.core.di.internal.extensions.EventObjectSupplier$DIEventHandler.handleEvent(EventObjectSupplier.java:91) at org.eclipse.equinox.internal.event.EventHandlerWrapper.handleEvent(EventHandlerWrapper.java:204) at org.eclipse.equinox.internal.event.EventHandlerTracker.dispatchEvent(EventHandlerTracker.java:199) at org.eclipse.equinox.internal.event.EventHandlerTracker.dispatchEvent(EventHandlerTracker.java:1) at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:233) at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:151) at org.eclipse.equinox.internal.event.EventAdminImpl.dispatchEvent(EventAdminImpl.java:138) at org.eclipse.equinox.internal.event.EventAdminImpl.sendEvent(EventAdminImpl.java:81) at org.eclipse.equinox.internal.event.EventComponent.sendEvent(EventComponent.java:42) at org.eclipse.e4.ui.services.internal.events.EventBroker.send(EventBroker.java:55) at org.eclipse.e4.ui.internal.workbench.UIEventPublisher.notifyChanged(UIEventPublisher.java:63) at org.eclipse.emf.common.notify.impl.BasicNotifierImpl.eNotify(BasicNotifierImpl.java:424) at org.eclipse.e4.ui.model.application.ui.impl.UIElementImpl.setToBeRendered(UIElementImpl.java:307) at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.hidePart(PartServiceImpl.java:1381) at org.eclipse.ui.internal.WorkbenchPage.hidePart(WorkbenchPage.java:1591) at org.eclipse.ui.internal.WorkbenchPage.hidePart(WorkbenchPage.java:1543) at org.eclipse.ui.internal.WorkbenchPage.closeEditors(WorkbenchPage.java:1513) at org.eclipse.ui.internal.WorkbenchPage.closeEditor(WorkbenchPage.java:1637) at com.vaadin.designer.eclipse.editors.VaadinEditor.closeEditor(VaadinEditor.java:897) at com.vaadin.designer.eclipse.editors.VaadinEditor.closeDesignInNewerProjectAndNotifyUser(VaadinEditor.java:876) at com.vaadin.designer.eclipse.editors.VaadinEditor.validateDesignFileInteractive(VaadinEditor.java:816) at com.vaadin.designer.eclipse.editors.VaadinEditorPart.run(VaadinEditorPart.java:185) at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:40) at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:185) at sun.reflect.GeneratedMethodAccessor74.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at com.vaadin.designer.eclipse.editors.FakeComposite.flushAsyncQueue(FakeComposite.java:166) at com.vaadin.designer.eclipse.editors.FakeComposite.flushAsyncQueue(FakeComposite.java:140) at com.vaadin.designer.eclipse.editors.FakeComposite.setLayoutDeferred(FakeComposite.java:127) at org.eclipse.swt.widgets.Display.runDeferredLayouts(Display.java:3982) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3554) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1173) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:339) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1062) at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:156) at org.eclipse.ui.internal.Workbench.lambda(Workbench.java:628) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:339) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:563) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:151) at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:155) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:199) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:137) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:107) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:391) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:246) 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:659) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:595) at org.eclipse.equinox.launcher.Main.run(Main.java:1501)


未处理的事件循环异常

java.lang.NullPointerException at org.eclipse.ui.internal.PartSite.getShell(PartSite.java:477) at com.vaadin.designer.eclipse.editors.VaadinEditor.openDesigner2InstallWarning(VaadinEditor.java:886) at com.vaadin.designer.eclipse.editors.VaadinEditor.closeDesignInNewerProjectAndNotifyUser(VaadinEditor.java:878) at com.vaadin.designer.eclipse.editors.VaadinEditor.validateDesignFileInteractive(VaadinEditor.java:816) at com.vaadin.designer.eclipse.editors.VaadinEditorPart.run(VaadinEditorPart.java:185) at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:40) at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:185) at sun.reflect.GeneratedMethodAccessor74.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at com.vaadin.designer.eclipse.editors.FakeComposite.flushAsyncQueue(FakeComposite.java:166) at com.vaadin.designer.eclipse.editors.FakeComposite.flushAsyncQueue(FakeComposite.java:140) at com.vaadin.designer.eclipse.editors.FakeComposite.setLayoutDeferred(FakeComposite.java:127) at org.eclipse.swt.widgets.Display.runDeferredLayouts(Display.java:3982) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3554) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1173) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:339) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1062) at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:156) at org.eclipse.ui.internal.Workbench.lambda(Workbench.java:628) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:339) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:563) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:151) at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:155) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:199) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:137) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:107) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:391) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:246) 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:659) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:595) at org.eclipse.equinox.launcher.Main.run(Main.java:1501)

有人知道如何解决这个问题吗?

为 Vaadin 8 使用 Vaadin Designer 2