Java org.eclipse.swt.SWTException:尝试打开 AndroidManifest.xml 时出现“小部件已处理”
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/19615286/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
org.eclipse.swt.SWTException: “Widget is disposed” when trying to open AndroidManifest.xml
提问by Karan Sharma
I am running Windows 8 and using Eclipse Kepler Release to create android application.
我正在运行 Windows 8 并使用 Eclipse Kepler Release 创建 android 应用程序。
When I click on the AndroidManifest.xml file in my project, I receive an alert which shows the following error message:
当我单击项目中的 AndroidManifest.xml 文件时,我收到一条显示以下错误消息的警报:
Problems occurred when invoking code from plug-in: "org.eclipse.e4.ui.workbench.swt".
Exception Stack Trace:
异常堆栈跟踪:
org.eclipse.e4.core.di.InjectionException: org.eclipse.swt.SWTException: Widget is disposed
at org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:63)
at org.eclipse.e4.core.internal.contexts.ContextObjectSupplier$ContextInjectionListener.update(ContextObjectSupplier.java:88)
at org.eclipse.e4.core.internal.contexts.TrackableComputationExt.update(TrackableComputationExt.java:107)
at org.eclipse.e4.core.internal.contexts.EclipseContext.processScheduled(EclipseContext.java:328)
at org.eclipse.e4.core.internal.contexts.EclipseContext.set(EclipseContext.java:342)
at org.eclipse.e4.core.internal.contexts.EclipseContext.activate(EclipseContext.java:625)
at org.eclipse.e4.ui.internal.workbench.swt.ShellActivationListener.run(ShellActivationListener.java:120)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
at org.eclipse.e4.ui.internal.workbench.swt.ShellActivationListener.activate(ShellActivationListener.java:117)
at org.eclipse.e4.ui.internal.workbench.swt.ShellActivationListener.handleEvent(ShellActivationListener.java:73)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
at org.eclipse.swt.widgets.Display.filterEvent(Display.java:1262)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1056)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1081)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066)
at org.eclipse.swt.widgets.Decorations.WM_ACTIVATE(Decorations.java:1667)
at org.eclipse.swt.widgets.Shell.WM_ACTIVATE(Shell.java:2151)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:4608)
at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340)
at org.eclipse.swt.widgets.Decorations.windowProc(Decorations.java:1627)
at org.eclipse.swt.widgets.Shell.windowProc(Shell.java:2075)
at org.eclipse.swt.widgets.Display.windowProc(Display.java:4977)
at org.eclipse.swt.internal.win32.OS.BringWindowToTop(Native Method)
at org.eclipse.swt.widgets.Decorations.bringToTop(Decorations.java:231)
at org.eclipse.swt.widgets.Shell.open(Shell.java:1217)
at org.eclipse.jface.window.Window.open(Window.java:798)
at org.eclipse.ui.internal.statushandlers.InternalDialog.open(InternalDialog.java:327)
at org.eclipse.ui.internal.statushandlers.WorkbenchStatusDialogManagerImpl.doAddStatusAdapter(WorkbenchStatusDialogManagerImpl.java:270)
at org.eclipse.ui.internal.statushandlers.WorkbenchStatusDialogManagerImpl.addStatusAdapter(WorkbenchStatusDialogManagerImpl.java:197)
at org.eclipse.ui.statushandlers.WorkbenchStatusDialogManager.addStatusAdapter(WorkbenchStatusDialogManager.java:156)
at org.eclipse.ui.statushandlers.WorkbenchErrorHandler.showStatusAdapter(WorkbenchErrorHandler.java:101)
at org.eclipse.ui.statushandlers.WorkbenchErrorHandler.handle(WorkbenchErrorHandler.java:57)
at org.eclipse.ui.internal.ide.IDEWorkbenchErrorHandler.handle(IDEWorkbenchErrorHandler.java:108)
at org.eclipse.ui.internal.WorkbenchErrorHandlerProxy.handle(WorkbenchErrorHandlerProxy.java:36)
at org.eclipse.ui.statushandlers.StatusManager.handle(StatusManager.java:189)
at org.eclipse.ui.internal.JFaceUtil.show(JFaceUtil.java:70)
at org.eclipse.jface.util.SafeRunnable.handleException(SafeRunnable.java:67)
at org.eclipse.core.runtime.SafeRunner.handleException(SafeRunner.java:75)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:44)
at org.eclipse.ui.internal.JFaceUtil.run(JFaceUtil.java:49)
at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:175)
at org.eclipse.jface.viewers.StructuredViewer.fireOpen(StructuredViewer.java:864)
at org.eclipse.jface.viewers.StructuredViewer.handleOpen(StructuredViewer.java:1152)
at org.eclipse.jface.viewers.StructuredViewer.handleOpen(StructuredViewer.java:1256)
at org.eclipse.jface.util.OpenStrategy.fireOpenEvent(OpenStrategy.java:275)
at org.eclipse.jface.util.OpenStrategy.access(OpenStrategy.java:269)
at org.eclipse.jface.util.OpenStrategy.handleEvent(OpenStrategy.java:309)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1057)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4170)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3759)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.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.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)
Caused by: org.eclipse.swt.SWTException: Widget is disposed
at org.eclipse.swt.SWT.error(SWT.java:4397)
at org.eclipse.swt.SWT.error(SWT.java:4312)
at org.eclipse.swt.SWT.error(SWT.java:4283)
at org.eclipse.swt.widgets.Widget.error(Widget.java:472)
at org.eclipse.swt.widgets.Widget.checkWidget(Widget.java:344)
at org.eclipse.swt.widgets.Widget.addDisposeListener(Widget.java:214)
at org.eclipse.e4.ui.css.swt.engine.CSSSWTEngineImpl.hookNativeWidget(CSSSWTEngineImpl.java:52)
at org.eclipse.e4.ui.css.core.impl.engine.AbstractCSSEngine.getElement(AbstractCSSEngine.java:919)
at org.eclipse.e4.ui.css.core.dom.ElementAdapter.getElement(ElementAdapter.java:336)
at org.eclipse.e4.ui.css.swt.dom.CTabFolderElement.item(CTabFolderElement.java:52)
at org.eclipse.e4.ui.css.core.impl.engine.AbstractCSSEngine.applyStyles(AbstractCSSEngine.java:481)
at org.eclipse.e4.ui.css.core.impl.engine.AbstractCSSEngine.applyStyles(AbstractCSSEngine.java:405)
at org.eclipse.e4.ui.css.core.impl.engine.AbstractCSSEngine.applyStyles(AbstractCSSEngine.java:481)
at org.eclipse.e4.ui.css.core.impl.engine.AbstractCSSEngine.applyStyles(AbstractCSSEngine.java:405)
at org.eclipse.e4.ui.css.core.impl.engine.AbstractCSSEngine.applyStyles(AbstractCSSEngine.java:481)
at org.eclipse.e4.ui.css.core.impl.engine.AbstractCSSEngine.applyStyles(AbstractCSSEngine.java:405)
at org.eclipse.e4.ui.css.core.impl.engine.AbstractCSSEngine.applyStyles(AbstractCSSEngine.java:481)
at org.eclipse.e4.ui.css.core.impl.engine.AbstractCSSEngine.applyStyles(AbstractCSSEngine.java:405)
at org.eclipse.e4.ui.css.swt.internal.theme.ThemeEngine.applyStyles(ThemeEngine.java:497)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.setClassnameAndId(PartRenderingEngine.java:1267)
at org.eclipse.e4.ui.workbench.renderers.swt.SWTPartRenderer.setCSSInfo(SWTPartRenderer.java:92)
at org.eclipse.e4.ui.workbench.renderers.swt.WBWRenderer.styleStack(WBWRenderer.java:179)
at org.eclipse.e4.ui.workbench.renderers.swt.WBWRenderer.trackActivePart(WBWRenderer.java:148)
at sun.reflect.GeneratedMethodAccessor25.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:56)
... 71 more
采纳答案by Karan Sharma
Restarting the Eclipse IDE solved the problem.
重新启动 Eclipse IDE 解决了问题。
回答by Jameer Mulani
Start Eclipse via command prompt by entering command: eclipse -clean
solved my problem.
通过输入命令通过命令提示符启动 Eclipse:eclipse -clean
解决了我的问题。
回答by user2489898
It's much better close the Eclipse and start the Eclipse again rather than restart the Eclipse, it will work faster.
最好关闭 Eclipse 并再次启动 Eclipse 而不是重新启动 Eclipse,它会运行得更快。
回答by Arun Pratap Singh
Eclipse - Kepler / Luna / Mars
日食 - 开普勒 / 月神 / 火星
for me I went to
对我来说,我去了
...\.metadata.plugins\org.eclipse.e4.workbench // folder locaiton.
...\.metadata.plugins\org.eclipse.e4.workbench // 文件夹位置。
and deleted all the content of
并删除了所有内容
workbench.xmi
工作台.xmi
and restarted the application.
并重新启动应用程序。
Worked for me hopefully will work for you.
为我工作,希望对你有用。
Note: Good to take back up before making changes.
注意:最好在进行更改之前进行备份。
回答by Mayur Gorakhpuria
Clean a server and restart eclips IDE.
清理服务器并重新启动 eclips IDE。
回答by Bharat
I did little bit change on the file name.
我对文件名做了一点改动。
/.metadata/.plugins/org.eclipse.e4.workbench/workbench.xmi above is the original name of workbench.xmi
上面的/.metadata/.plugins/org.eclipse.e4.workbench/workbench.xmi是workbench.xmi的原名
I rename that on workbenchold.xmi which work for me.
我在对我有用的 workbenchold.xmi 上重命名它。
once you rename it must update your eclipse and plugins from the marketplace plus do little bit your 'show view' settings.
重命名后,它必须更新您的 Eclipse 和来自市场的插件,并做一点您的“显示视图”设置。