Eclipse 在loading workbench时闪退并提示查看.log

本文介绍了Eclipse在启动过程中快速闪退的问题及其解决方法。闪退问题是由于工作空间中的workbench.xmi文件未正常关闭导致。解决步骤包括删除特定的工作空间文件并重新启动Eclipse。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

启动Eclipse时,在loading workbench时很快就闪退,反复启动几次都是这种情况,关机重启后还是出现这种情况,并且每次闪退后都提示查看\workspace\.metadata\.log ,进入该目录中,发现有如下异常信息记录:
[html]  view plain  copy
  1. !ENTRY org.eclipse.e4.ui.workbench.swt 4 2 2016-08-23 08:42:49.516  
  2. !MESSAGE Problems occurred when invoking code from plug-in: "org.eclipse.e4.ui.workbench.swt".  
  3. !STACK 0  
  4. java.lang.IllegalArgumentException: Argument cannot be null  
  5.     at org.eclipse.swt.SWT.error(SWT.java:4472)  
  6.     at org.eclipse.swt.SWT.error(SWT.java:4406)  
  7.     at org.eclipse.swt.SWT.error(SWT.java:4377)  
  8.     at org.eclipse.swt.widgets.Widget.error(Widget.java:482)  
  9.     at org.eclipse.swt.widgets.Widget.checkParent(Widget.java:291)  
  10.     at org.eclipse.swt.widgets.Widget.<init>(Widget.java:158)  
  11.     at org.eclipse.swt.widgets.Control.<init>(Control.java:109)  
  12.     at org.eclipse.swt.widgets.Scrollable.<init>(Scrollable.java:81)  
  13.     at org.eclipse.swt.widgets.Composite.<init>(Composite.java:96)  
  14.     at org.eclipse.e4.ui.workbench.renderers.swt.SashRenderer.createWidget(SashRenderer.java:127)  
  15.     at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.createWidget(PartRenderingEngine.java:971)  
  16.     at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:640)  
  17.     at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:746)  
  18.     at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.access$0(PartRenderingEngine.java:717)  
  19.     at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$2.run(PartRenderingEngine.java:711)  
  20.     at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)  
  21.     at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.createGui(PartRenderingEngine.java:695)  
  22.     at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.createElement(PartServiceImpl.java:1205)  
  23.     at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.showPart(PartServiceImpl.java:1170)  
  24.     at org.eclipse.ui.internal.WorkbenchPage.showPart(WorkbenchPage.java:1301)  
  25.     at org.eclipse.ui.internal.WorkbenchPage.busyShowView(WorkbenchPage.java:1266)  
  26.     at org.eclipse.ui.internal.WorkbenchPage$12.run(WorkbenchPage.java:4211)  
  27.     at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)  
  28.     at org.eclipse.ui.internal.WorkbenchPage.showView(WorkbenchPage.java:4207)  
  29.     at org.eclipse.ui.internal.ide.IDEWorkbenchPlugin$2.run(IDEWorkbenchPlugin.java:376)  
  30.     at org.eclipse.swt.widgets.Display.runTimer(Display.java:4281)  
  31.     at org.eclipse.swt.widgets.Display.messageProc(Display.java:3368)  
  32.     at org.eclipse.swt.internal.win32.OS.DispatchMessageW(Native Method)  
  33.     at org.eclipse.swt.internal.win32.OS.DispatchMessage(OS.java:2549)  
  34.     at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3767)  
  35.     at org.eclipse.swt.widgets.Display.release(Display.java:3825)  
  36.     at org.eclipse.swt.graphics.Device.dispose(Device.java:295)  
  37.     at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:155)  
  38.     at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)  
  39.     at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)  
  40.     at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)  
  41.     at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:380)  
  42.     at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:235)  
  43.     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)  
  44.     at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)  
  45.     at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)  
  46.     at java.lang.reflect.Method.invoke(Unknown Source)  
  47.     at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:669)  
  48.     at org.eclipse.equinox.launcher.Main.basicRun(Main.java:608)  
  49.     at org.eclipse.equinox.launcher.Main.run(Main.java:1515)  
  50.     at org.eclipse.equinox.launcher.Main.main(Main.java:1488)  
出现该问题的原因 是:由于项目没有正常关闭运行而导致"workbench.xmi"中的"persistedState"标签还保持在运行时的配置造成的。

解决办法:

找到<workspace>/.metadata/.plugins/org.eclipse.e4.workbench/workbench.xmi"文件,将其删掉,再重启Eclipse,恢复正常。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值