태그 보관물: org.eclipse.e4.workbench

Eclipse 실행시 StatusHandlerRegistry 오류

잘되던 이클립스가 PC를 껐다가 켜니 안된다…
실행자체가 안되어서 문제가 된다면 일단 오류 로그를 확인하는 것이 가장 우선 먼저 해야할 행동이다.

Eclipse 로그 위치

${이클립스 프로젝트 워크스페이스}/.metadata/.log

오류내용

!ENTRY org.eclipse.ui 4 0 2014-09-22 09:33:56.982
!MESSAGE Error occurred during status handling
!STACK 0
java.lang.NullPointerException
    at org.eclipse.ui.internal.statushandlers.StatusHandlerRegistry.<init>(StatusHandlerRegistry.java:61)
    at org.eclipse.ui.internal.statushandlers.StatusHandlerRegistry.getDefault(StatusHandlerRegistry.java:91)
    at org.eclipse.ui.statushandlers.StatusManager.getStatusHandler(StatusManager.java:135)
    at org.eclipse.ui.statushandlers.StatusManager.handle(StatusManager.java:189)
    at org.eclipse.ui.statushandlers.StatusManager.handle(StatusManager.java:231)
    at org.eclipse.ui.statushandlers.StatusManager$StatusManagerLogListener.logging(StatusManager.java:305)
    at org.eclipse.core.internal.runtime.RuntimeLog.logToListeners(RuntimeLog.java:160)
    at org.eclipse.core.internal.runtime.PlatformLogWriter.logged(PlatformLogWriter.java:100)
    at org.eclipse.equinox.log.internal.ExtendedLogReaderServiceFactory.safeLogged(ExtendedLogReaderServiceFactory.java:86)
    at org.eclipse.equinox.log.internal.ExtendedLogReaderServiceFactory.logPrivileged(ExtendedLogReaderServiceFactory.java:205)
    at org.eclipse.equinox.log.internal.ExtendedLogReaderServiceFactory.log(ExtendedLogReaderServiceFactory.java:178)
    at org.eclipse.equinox.log.internal.ExtendedLogServiceFactory.log(ExtendedLogServiceFactory.java:65)
    at org.eclipse.equinox.log.internal.ExtendedLogServiceImpl.log(ExtendedLogServiceImpl.java:87)
    at org.eclipse.equinox.log.internal.LoggerImpl.log(LoggerImpl.java:54)
    at org.eclipse.core.internal.runtime.PlatformLogWriter.logging(PlatformLogWriter.java:43)
    at org.eclipse.core.internal.runtime.RuntimeLog.log(RuntimeLog.java:96)
    at org.eclipse.core.internal.jobs.JobManager.doShutdown(JobManager.java:606)
    at org.eclipse.core.internal.jobs.JobManager.shutdown(JobManager.java:252)
    at org.eclipse.core.internal.jobs.JobActivator.stop(JobActivator.java:55)
    at org.eclipse.osgi.framework.internal.core.BundleContextImpl$2.run(BundleContextImpl.java:771)
    at java.security.AccessController.doPrivileged(Native Method)
    at org.eclipse.osgi.framework.internal.core.BundleContextImpl.stop(BundleContextImpl.java:764)
    at org.eclipse.osgi.framework.internal.core.BundleHost.stopWorker(BundleHost.java:510)
    at org.eclipse.osgi.framework.internal.core.AbstractBundle.suspend(AbstractBundle.java:566)
    at org.eclipse.osgi.framework.internal.core.Framework.suspendBundle(Framework.java:1206)
    at org.eclipse.osgi.framework.internal.core.StartLevelManager.decFWSL(StartLevelManager.java:592)
    at org.eclipse.osgi.framework.internal.core.StartLevelManager.doSetStartLevel(StartLevelManager.java:257)
    at org.eclipse.osgi.framework.internal.core.StartLevelManager.shutdown(StartLevelManager.java:215)
    at org.eclipse.osgi.framework.internal.core.InternalSystemBundle.suspend(InternalSystemBundle.java:284)
    at org.eclipse.osgi.framework.internal.core.Framework.shutdown(Framework.java:692)
    at org.eclipse.osgi.framework.internal.core.Framework.close(Framework.java:600)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.shutdown(EclipseStarter.java:399)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:199)
    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:629)
    at org.eclipse.equinox.launcher.Main.basicRun(Main.java:584)
    at org.eclipse.equinox.launcher.Main.run(Main.java:1438)
    at org.eclipse.equinox.launcher.Main.main(Main.java:1414)

처리방법

  • 커맨드 라인을 통해서 클린 실행하기
      $ eclipse -clean
  • 클린 실행이 안된다면 Eclipse의 플러그인 중에 'org.eclipse.e4.workbench' 삭제하기
    • 위치는 '${Eclipse WorkSpace}/.metadata/.plugins/org.eclipse.e4.workbench'