当我启动Eclipse时出现错误,现在我的包资源管理器为空。

4
我目前正在学习Java,使用《Head First Java》这本书和Eclipse相结合的方式。一切都进行得很顺利,直到今晚!
今晚我启动Eclipse时看到了一个错误消息,但我没有注意(我知道!我知道!),然后确认后,项目资源管理器就变成空白了,以前它包含了我的Head First项目!
通过快速地“谷歌”搜索,我找到了workspace.metadata.log文件,下面显示了错误信息。
我使用的Eclipse版本是:20100218-1602,我唯一使用的插件是egit。
非常感谢你提供任何帮助。
!SESSION 2010-06-08 19:24:33.841 -----------------------------------------------
eclipse.buildId=unknown
java.version=1.5.0_22
java.vendor=Sun Microsystems Inc.
BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=en_GB
Framework arguments:  -product org.eclipse.epp.package.java.product
Command-line arguments:  -os win32 -ws win32 -arch x86 -product org.eclipse.epp.package.java.product

!ENTRY org.eclipse.ui.workbench 4 2 2010-06-08 19:24:36.475
!MESSAGE Problems occurred when invoking code from plug-in: "org.eclipse.ui.workbench".
!STACK 1
org.eclipse.ui.WorkbenchException: Content is not allowed in prolog.
    at org.eclipse.ui.XMLMemento.createReadRoot(XMLMemento.java:121)
    at org.eclipse.ui.XMLMemento.createReadRoot(XMLMemento.java:64)
    at org.eclipse.ui.internal.Workbench$49.run(Workbench.java:1895)
    at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
    at org.eclipse.ui.internal.Workbench.restoreState(Workbench.java:1890)
    at org.eclipse.ui.internal.WorkbenchConfigurer.restoreState(WorkbenchConfigurer.java:183)
    at org.eclipse.ui.application.WorkbenchAdvisor$1.run(WorkbenchAdvisor.java:781)
Caused by: org.xml.sax.SAXParseException: Content is not allowed in prolog.
    at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:264)
    at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:292)
    at org.eclipse.ui.XMLMemento.createReadRoot(XMLMemento.java:94)
    ... 6 more
!SUBENTRY 1 org.eclipse.ui 4 0 2010-06-08 19:24:36.475
!MESSAGE Content is not allowed in prolog.
!STACK 0
org.xml.sax.SAXParseException: Content is not allowed in prolog.
    at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:264)
    at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:292)
    at org.eclipse.ui.XMLMemento.createReadRoot(XMLMemento.java:94)
    at org.eclipse.ui.XMLMemento.createReadRoot(XMLMemento.java:64)
    at org.eclipse.ui.internal.Workbench$49.run(Workbench.java:1895)
    at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
    at org.eclipse.ui.internal.Workbench.restoreState(Workbench.java:1890)
    at org.eclipse.ui.internal.WorkbenchConfigurer.restoreState(WorkbenchConfigurer.java:183)
    at org.eclipse.ui.application.WorkbenchAdvisor$1.run(WorkbenchAdvisor.java:781)
!SUBENTRY 1 org.eclipse.ui 4 0 2010-06-08 19:24:36.475
!MESSAGE Content is not allowed in prolog.
!STACK 0
org.xml.sax.SAXParseException: Content is not allowed in prolog.
    at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:264)
    at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:292)
    at org.eclipse.ui.XMLMemento.createReadRoot(XMLMemento.java:94)
    at org.eclipse.ui.XMLMemento.createReadRoot(XMLMemento.java:64)
    at org.eclipse.ui.internal.Workbench$49.run(Workbench.java:1895)
    at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
    at org.eclipse.ui.internal.Workbench.restoreState(Workbench.java:1890)
    at org.eclipse.ui.internal.WorkbenchConfigurer.restoreState(WorkbenchConfigurer.java:183)
    at org.eclipse.ui.application.WorkbenchAdvisor$1.run(WorkbenchAdvisor.java:781)

!ENTRY org.eclipse.jdt.ui 4 10001 2010-06-08 19:24:41.442
!MESSAGE Internal Error
!STACK 1
org.eclipse.jdt.internal.ui.JavaUIException: Problems reading information from XML 'OpenTypeHistory.xml'
    at org.eclipse.jdt.internal.corext.util.History.createException(History.java:70)
    at org.eclipse.jdt.internal.corext.util.History.load(History.java:257)
    at org.eclipse.jdt.internal.corext.util.History.load(History.java:166)
    at org.eclipse.jdt.internal.corext.util.OpenTypeHistory.<init>(OpenTypeHistory.java:199)
    at org.eclipse.jdt.internal.corext.util.OpenTypeHistory.getInstance(OpenTypeHistory.java:185)
    at org.eclipse.jdt.internal.ui.JavaPlugin.initializeAfterLoad(JavaPlugin.java:381)
    at org.eclipse.jdt.internal.ui.InitializeAfterLoadJob$RealJob.run(InitializeAfterLoadJob.java:36)
    at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)
Caused by: org.xml.sax.SAXParseException: Content is not allowed in prolog.
    at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:264)
    at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:292)
    at org.eclipse.jdt.internal.corext.util.History.load(History.java:255)
    ... 6 more
!SUBENTRY 1 org.eclipse.jdt.ui 4 4 2010-06-08 19:24:41.442
!MESSAGE Problems reading information from XML 'OpenTypeHistory.xml'
!STACK 0
org.xml.sax.SAXParseException: Content is not allowed in prolog.
    at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:264)
    at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:292)
    at org.eclipse.jdt.internal.corext.util.History.load(History.java:255)
    at org.eclipse.jdt.internal.corext.util.History.load(History.java:166)
    at org.eclipse.jdt.internal.corext.util.OpenTypeHistory.<init>(OpenTypeHistory.java:199)
    at org.eclipse.jdt.internal.corext.util.OpenTypeHistory.getInstance(OpenTypeHistory.java:185)
    at org.eclipse.jdt.internal.ui.JavaPlugin.initializeAfterLoad(JavaPlugin.java:381)
    at org.eclipse.jdt.internal.ui.InitializeAfterLoadJob$RealJob.run(InitializeAfterLoadJob.java:36)
    at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)

!ENTRY org.eclipse.jdt.ui 4 10001 2010-06-08 19:24:50.435
!MESSAGE Internal Error
!STACK 1
org.eclipse.jdt.internal.ui.JavaUIException: Problems reading information from XML 'QualifiedTypeNameHistory.xml'
    at org.eclipse.jdt.internal.corext.util.History.createException(History.java:70)
    at org.eclipse.jdt.internal.corext.util.History.load(History.java:257)
    at org.eclipse.jdt.internal.corext.util.History.load(History.java:166)
    at org.eclipse.jdt.internal.corext.util.QualifiedTypeNameHistory.<init>(QualifiedTypeNameHistory.java:33)
    at org.eclipse.jdt.internal.corext.util.QualifiedTypeNameHistory.getDefault(QualifiedTypeNameHistory.java:26)
    at org.eclipse.jdt.internal.ui.JavaPlugin.stop(JavaPlugin.java:602)
    at org.eclipse.osgi.framework.internal.core.BundleContextImpl$2.run(BundleContextImpl.java:843)
    at java.security.AccessController.doPrivileged(Native Method)
    at org.eclipse.osgi.framework.internal.core.BundleContextImpl.stop(BundleContextImpl.java:836)
    at org.eclipse.osgi.framework.internal.core.BundleHost.stopWorker(BundleHost.java:474)
    at org.eclipse.osgi.framework.internal.core.AbstractBundle.suspend(AbstractBundle.java:546)
    at org.eclipse.osgi.framework.internal.core.Framework.suspendBundle(Framework.java:1098)
    at org.eclipse.osgi.framework.internal.core.StartLevelManager.decFWSL(StartLevelManager.java:593)
    at org.eclipse.osgi.framework.internal.core.StartLevelManager.doSetStartLevel(StartLevelManager.java:261)
    at org.eclipse.osgi.framework.internal.core.StartLevelManager.shutdown(StartLevelManager.java:216)
    at org.eclipse.osgi.framework.internal.core.InternalSystemBundle.suspend(InternalSystemBundle.java:266)
    at org.eclipse.osgi.framework.internal.core.Framework.shutdown(Framework.java:685)
    at org.eclipse.osgi.framework.internal.core.Framework.close(Framework.java:583)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.shutdown(EclipseStarter.java:409)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:200)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:592)
    at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:559)
    at org.eclipse.equinox.launcher.Main.basicRun(Main.java:514)
    at org.eclipse.equinox.launcher.Main.run(Main.java:1311)
Caused by: org.xml.sax.SAXParseException: Content is not allowed in prolog.
    at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:264)
    at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:292)
    at org.eclipse.jdt.internal.corext.util.History.load(History.java:255)
    ... 25 more
!SUBENTRY 1 org.eclipse.jdt.ui 4 4 2010-06-08 19:24:50.435
!MESSAGE Problems reading information from XML 'QualifiedTypeNameHistory.xml'
!STACK 0
org.xml.sax.SAXParseException: Content is not allowed in prolog.
    at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:264)
    at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:292)
    at org.eclipse.jdt.internal.corext.util.History.load(History.java:255)
    at org.eclipse.jdt.internal.corext.util.History.load(History.java:166)
    at org.eclipse.jdt.internal.corext.util.QualifiedTypeNameHistory.<init>(QualifiedTypeNameHistory.java:33)
    at org.eclipse.jdt.internal.corext.util.QualifiedTypeNameHistory.getDefault(QualifiedTypeNameHistory.java:26)
    at org.eclipse.jdt.internal.ui.JavaPlugin.stop(JavaPlugin.java:602)
    at org.eclipse.osgi.framework.internal.core.BundleContextImpl$2.run(BundleContextImpl.java:843)
    at java.security.AccessController.doPrivileged(Native Method)
    at org.eclipse.osgi.framework.internal.core.BundleContextImpl.stop(BundleContextImpl.java:836)
    at org.eclipse.osgi.framework.internal.core.BundleHost.stopWorker(BundleHost.java:474)
    at org.eclipse.osgi.framework.internal.core.AbstractBundle.suspend(AbstractBundle.java:546)
    at org.eclipse.osgi.framework.internal.core.Framework.suspendBundle(Framework.java:1098)
    at org.eclipse.osgi.framework.internal.core.StartLevelManager.decFWSL(StartLevelManager.java:593)
    at org.eclipse.osgi.framework.internal.core.StartLevelManager.doSetStartLevel(StartLevelManager.java:261)
    at org.eclipse.osgi.framework.internal.core.StartLevelManager.shutdown(StartLevelManager.java:216)
    at org.eclipse.osgi.framework.internal.core.InternalSystemBundle.suspend(InternalSystemBundle.java:266)
    at org.eclipse.osgi.framework.internal.core.Framework.shutdown(Framework.java:685)
    at org.eclipse.osgi.framework.internal.core.Framework.close(Framework.java:583)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.shutdown(EclipseStarter.java:409)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:200)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:592)
    at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:559)
    at org.eclipse.equinox.launcher.Main.basicRun(Main.java:514)
    at org.eclipse.equinox.launcher.Main.run(Main.java:1311)
4个回答

6

您上一次是否正确关闭了eclipse?我建议您直接创建一个新的工作空间,然后将项目文件导入其中。最好花时间学习,而不是弄清楚eclipse出了什么问题 :-)


3
Ah,Eclipse错误。没有什么比你最重要的工具崩溃并带走了你不知道多少工作更能让你在一天开始时感到恐慌了...
你看过这个页面吗?在自己诊断Eclipse错误时,我的策略是在Google上搜索“eclipse”和我能找到的任何错误消息。上面的链接来自于搜索以下内容而得到的:
"Problems reading information from XML 'OpenTypeHistory.xml'" eclipse 肯定是某个文件出现了损坏,尽管我相信你现在已经弄清楚了。希望这可以帮助你,并希望你在不丢失任何工作的情况下解决它。

1
+1 链接和未来建议。很高兴我不是唯一一个感到“恐惧冲击”的人! - Ian Carpenter

1
在干净关闭后,我遇到了同样的问题。从我的工作区备份中复制.metadata目录后,项目又出现了。

1

很可能是Eclipse中的某些文件损坏了。即使我尝试了Prashant提供的解决方案(创建新的工作区),但不幸的是,这对我没有起作用。我已经有了Eclipse的副本,所以我重新安装了Eclipse,现在一切都正常了。最好重新安装Eclipse。


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