5

Eclipse 昨晚运行良好,但今天早上我尝试启动它时遇到了这个错误:

替代文字 http://img707.imageshack.us/img707/4416/ss20100407181208.png

这是日志

!SESSION 2010-04-07 17:58:37.208 -----------------------------------------------
eclipse.buildId=I20080617-2000
java.version=1.6.0_13
java.vendor=Sun Microsystems Inc.
BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=en_US
Command-line arguments:  -os win32 -ws win32 -arch x86

!ENTRY org.eclipse.osgi 4 0 2010-04-07 17:58:37.457
!MESSAGE Startup error
!STACK 1
java.lang.NumberFormatException: For input string: ""
at java.lang.NumberFormatException.forInputString(Unknown Source)
at java.lang.Integer.parseInt(Unknown Source)
at java.lang.Integer.parseInt(Unknown Source)
at org.eclipse.osgi.storagemanager.StorageManager.updateTable(StorageManager.java:512)
at org.eclipse.osgi.storagemanager.StorageManager.open(StorageManager.java:694)
at org.eclipse.osgi.internal.baseadaptor.BaseStorage.initFileManager(BaseStorage.java:208)
at org.eclipse.osgi.internal.baseadaptor.BaseStorage.initialize(BaseStorage.java:142)
at org.eclipse.osgi.baseadaptor.BaseAdaptor.initializeStorage(BaseAdaptor.java:124)
at org.eclipse.osgi.framework.internal.core.Framework.initialize(Framework.java:180)
at org.eclipse.osgi.framework.internal.core.Framework.<init>(Framework.java:152)
at org.eclipse.osgi.framework.internal.core.OSGi.createFramework(OSGi.java:90)
at org.eclipse.osgi.framework.internal.core.OSGi.<init>(OSGi.java:31)
at org.eclipse.core.runtime.adaptor.EclipseStarter.startup(EclipseStarter.java:286)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:175)
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:549)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:504)
at org.eclipse.equinox.launcher.Main.run(Main.java:1236)

有什么帮助吗?我真的需要它启动和运行,并且重新安装和重置我所有的插件和设置目前不是一个选项。

4

3 回答 3

13

我遇到过同样的问题。经过一些调试后,我尝试从我的 eclipse 目录中删除以下文件夹

./configuration/org.eclipse.core.runtime/.manager
./configuration/org.eclipse.osgi/.manager

这为我解决了这个问题。无副作用。我认为这只是一个缓存,因为它会即时重新创建自己。如果找不到,源代码似乎并没有特别重视它,但是在第 512 行有一个尝试解析空字符串的错误。

查看 org.eclipse.osgi 的源代码,看起来这些文件以某种方式使用时间戳进行管理,因此,如果您正在做任何会与时间戳混淆的事情,那么您将遇到这个问题。我使用 git 来管理我的 eclipse 安装,因此如果新安装的功能开始影响我的业力,我可以恢复到早期版本。恢复后遇到这个问题。将其添加到 .gitignore。

于 2011-12-18T02:54:51.497 回答
6

至少尝试使用-clean选项重新启动 Eclipse。
还要检查(以防万一)您的磁盘空间!当磁盘上没有足够的空间时会发生这种情况,因为代码显示它正在从文件中读取字符串(应该是整数)。

还尝试将用于启动 Eclipse 的 java 升级到最新版本(u19 而不是 u13)

此错误堆栈跟踪已在有关某些版本的 Vista 的错误 113596中报告:您使用的是什么操作系统,最近是否已更新?(例如通过 Windows 更新)

于 2010-04-08T06:35:29.100 回答
1

最好的方法是使用新的 eclipse 副本并指向您在旧 eclipse 中使用的工作区位置。通过这种方式,您不会丢失您的设置,并将 100% 避免启动错误。

于 2010-04-07T22:32:28.957 回答