Eclipse崩溃,无法打开。

7

我一直在运行一个应用程序,突然eclipse崩溃了,现在还无法打开。我使用Win 7操作系统和java 7。在Eclipse正常工作期间,我从未设置HOME变量。在Eclipse崩溃后,我设置了HOME_JAVA,但问题仍然存在。我无法从工作台打开Eclipse。

我的元数据文件中有以下几行。

!SUBENTRY 1 org.eclipse.equinox.registry 4 1 2014-06-03 10:39:07.782
!MESSAGE Plug-in com.android.ide.eclipse.adt was unable to load class com.android.ide.eclipse.adt.internal.build.builders.PostCompilerBuilder.
!STACK 0
org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter$TerminatingClassNotFoundException: An error occurred while automatically activating bundle com.android.ide.eclipse.adt (629).
    at org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:124)
    at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass(ClasspathManager.java:469)
    at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.findLocalClass(DefaultClassLoader.java:216)
    at org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:395)
    at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:464)
    at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:421)
    at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:412)
    at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at org.eclipse.osgi.internal.loader.BundleLoader.loadClass(BundleLoader.java:340)
    at org.eclipse.osgi.framework.internal.core.BundleHost.loadClass(BundleHost.java:229)
    at org.eclipse.osgi.framework.internal.core.AbstractBundle.loadClass(AbstractBundle.java:1212)
    at org.eclipse.core.internal.registry.osgi.RegistryStrategyOSGI.createExecutableExtension(RegistryStrategyOSGI.java:174)
    at org.eclipse.core.internal.registry.ExtensionRegistry.createExecutableExtension(ExtensionRegistry.java:905)
    at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension(ConfigurationElement.java:243)
    at org.eclipse.core.internal.registry.ConfigurationElementHandle.createExecutableExtension(ConfigurationElementHandle.java:55)
    at org.eclipse.core.internal.events.BuildManager.instantiateBuilder(BuildManager.java:906)
    at org.eclipse.core.internal.events.BuildManager.initializeBuilder(BuildManager.java:859)
    at org.eclipse.core.internal.events.BuildManager.getBuilder(BuildManager.java:545)
    at org.eclipse.core.internal.events.BuildManager.getBuilder(BuildManager.java:574)
    at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:244)
    at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:299)
    at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
    at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:302)
    at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:358)
    at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:381)
    at org.eclipse.core.internal.events.AutoBuildJob.doBuild(AutoBuildJob.java:143)
    at org.eclipse.core.internal.events.AutoBuildJob.run(AutoBuildJob.java:241)
    at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53)
Caused by: org.osgi.framework.BundleException: Exception in com.android.ide.eclipse.adt.AdtPlugin.start() of bundle com.android.ide.eclipse.adt.
    at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:734)
    at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:683)
    at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:381)
    at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:300)
    at org.eclipse.osgi.framework.util.SecureAction.start(SecureAction.java:478)
    at org.eclipse.osgi.internal.loader.BundleLoader.setLazyTrigger(BundleLoader.java:263)
    at org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:109)
    ... 28 more
Caused by: java.lang.NullPointerException
    at org.eclipse.jface.resource.JFaceResources.getResources(JFaceResources.java:207)
    at org.eclipse.jface.resource.ImageRegistry.<init>(ImageRegistry.java:152)
    at org.eclipse.jface.resource.ImageRegistry.<init>(ImageRegistry.java:124)
    at org.eclipse.ui.internal.WorkbenchImages.initializeImageRegistry(WorkbenchImages.java:641)
    at org.eclipse.ui.internal.WorkbenchImages.getDescriptors(WorkbenchImages.java:530)
    at org.eclipse.ui.internal.WorkbenchImages.getImageDescriptor(WorkbenchImages.java:566)
    at org.eclipse.ui.internal.SharedImages.getImageDescriptor(SharedImages.java:47)
    at org.eclipse.ui.plugin.AbstractUIPlugin.imageDescriptorFromPlugin(AbstractUIPlugin.java:671)
    at com.android.ide.eclipse.adt.AdtPlugin.startEditors(AdtPlugin.java:1528)
    at com.android.ide.eclipse.adt.AdtPlugin.start(AdtPlugin.java:265)
    at org.eclipse.osgi.framework.internal.core.BundleContextImpl$1.run(BundleContextImpl.java:711)
    at java.security.AccessController.doPrivileged(Native Method)
    at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:702)
    ... 34 more

有人能帮我解决这个问题吗?涉及IT技术,请给出详细的解决方案。请勿删除HTML标签,只需翻译文本内容。

3
请尝试以下方法:前往yourWorkspace/.metadata/.plugins文件夹,并删除其中所有内容。Eclipse将重新启动并重新填充该文件夹。 - duggu
1
这不是 HOME_JAVA,而是 JAVA_HOME。 - EpicPandaForce
1
非常感谢。我从.metadata/.plugins中删除了所有内容,现在它又可以工作了。 - george4ntou
2
@Duggu 警告 - 删除 .metadata/.plugins 将删除所有导入的 git/gradle 项目,并重置工作台布局。 - romeara
2
正如堆栈的第一行所示,“subentry”是“org.eclipse.equinox.registry”。在eclipse->plugins文件夹中找到它并删除,然后您可以重新启动。您不需要删除所有内容。 - Leon
显示剩余2条评论
1个回答

15

无需删除整个your-workspace/.metadata/.plugins目录。

只需删除文件your-workspace/.metadata/.plugins/org.eclipse.e4.workbench/workbench.xmi

它存储了工作台中打开的文件列表,其中一个文件(很可能是pom.xml)导致您遇到的问题。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接