启动时发生Eclipse错误

启动时发生Eclipse错误,eclipse,workspace,ganymede,eclipse-3.4,Eclipse,Workspace,Ganymede,Eclipse 3.4,Eclipse昨晚运行得很好,但今天早上我尝试启动它时遇到了以下错误: 这是日志 !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

Eclipse昨晚运行得很好,但今天早上我尝试启动它时遇到了以下错误:

这是日志

!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)
!会话2010-04-07 17:58:37.208-----------------------------------------------
eclipse.buildId=I20080617-2000
java.version=1.6.0_13
java.vendor=太阳微系统公司。
引导加载程序常量:OS=win32,ARCH=x86,WS=win32,NL=en_US
命令行参数:-os win32-ws win32-arch x86
!条目org.eclipse.osgi42010-04-0717:58:37.457
!消息启动错误
!堆栈1
java.lang.NumberFormatException:用于输入字符串:“”
位于java.lang.NumberFormatException.forInputString(未知源)
位于java.lang.Integer.parseInt(未知源)
位于java.lang.Integer.parseInt(未知源)
位于org.eclipse.osgi.storagemanager.storagemanager.updateTable(storagemanager.java:512)
位于org.eclipse.osgi.storagemanager.storagemanager.open(storagemanager.java:694)
位于org.eclipse.osgi.internal.baseadapter.BaseStorage.initFileManager(BaseStorage.java:208)
位于org.eclipse.osgi.internal.baseadapter.BaseStorage.initialize(BaseStorage.java:142)
位于org.eclipse.osgi.baseAdapter.baseAdapter.InitializeStoreRage(baseAdapter.java:124)
位于org.eclipse.osgi.framework.internal.core.framework.initialize(framework.java:180)
位于org.eclipse.osgi.framework.internal.core.framework.(framework.java:152)
位于org.eclipse.osgi.framework.internal.core.osgi.createFramework(osgi.java:90)
位于org.eclipse.osgi.framework.internal.core.osgi(osgi.java:31)
位于org.eclipse.core.runtime.adapter.EclipseStarter.startup(EclipseStarter.java:286)
位于org.eclipse.core.runtime.adapter.EclipseStarter.run(EclipseStarter.java:175)
在sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)处
位于sun.reflect.NativeMethodAccessorImpl.invoke(未知源)
在sun.reflect.DelegatingMethodAccessorImpl.invoke处(未知源)
位于java.lang.reflect.Method.invoke(未知源)
位于org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:549)
位于org.eclipse.equinox.launcher.Main.basicRun(Main.java:504)
位于org.eclipse.equinox.launcher.Main.run(Main.java:1236)

有什么帮助吗?我真的需要启动并运行这个程序,目前还不能重新安装和重置我的所有插件和设置。

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

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

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


stacktrace在关于Vista的某些版本中报告了此错误:您使用的是什么操作系统,最近是否进行了更新?(以Windows update为例)

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

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

这为我解决了这个问题。没有副作用。我认为这只是一个缓存,因为它会动态地重新创建自己。如果找不到源代码,源代码似乎不会对它有任何特殊的重要性,但是有一个bug


查看org.eclipse.osgi的源代码,这些文件似乎是用时间戳管理的,因此,如果您正在做任何会弄乱时间戳的事情,那么您将遇到这个问题。我使用git来管理我的eclipse安装,这样,如果新安装的功能开始影响我的业力,我就可以恢复到早期版本。还原后遇到此问题。将其添加到.gitignore。

我想您的eclipse配置中有一些bug。但我不知道如何检查哪个配置文件包含错误
strace
在这里不起作用,我想……对于其他人来说:你也可以在插件/透视图方面关注这个问题?我使用它主要是为了Android开发,重新加载SDK的所有设置将是一个巨大的痛苦。在我意识到我的Android SDK和设置存储在一个单独的文件夹中,而不是Eclipse中之后,我最终这样做了。另外,我是最新版本的Eclipse的两个版本。它可能是Vista。它只是在一次更新中对我的系统做了些什么,但我不太确定是什么。它启用了我禁用的UAC,因此它也可以做一些与Eclipse有关的事情。实际上,最好将./configuration/org.Eclipse.core.runtime和./configuration/org.Eclipse.osgi添加到.gitignore。每次打开eclipse时,这些文件夹都会更改。