Bug 109055 - Error starting JDT Core due to IAE: Path for project must have only one segment.
Summary: Error starting JDT Core due to IAE: Path for project must have only one segment.
Status: VERIFIED FIXED
Alias: None
Product: JDT
Classification: Eclipse Project
Component: Core (show other bugs)
Version: 3.1   Edit
Hardware: PC Windows 2000
: P3 blocker (vote)
Target Milestone: 3.1.1   Edit
Assignee: Jerome Lanneluc CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-09-08 10:33 EDT by Nick Edgar CLA
Modified: 2005-09-26 10:56 EDT (History)
0 users

See Also:


Attachments
variablesAndContainers.dat file (383.83 KB, application/octet-stream)
2005-09-08 10:59 EDT, Nick Edgar CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Nick Edgar CLA 2005-09-08 10:33:42 EDT
WTP 0.7 (based on Eclipse 3.1)

I somehow got my workspace into a state whereby it can't start JDT anymore.
The log has many occurrences of the following on startup.

None of the JDT views or editors can be created, and the Java builder cannot
run, because the error occurred during JDT Core plug-in startup, so OSGi thinks
it's not started.

!MESSAGE An error occurred while automatically activating bundle
org.eclipse.jdt.core (163).
!STACK 0
org.osgi.framework.BundleException: Exception in
org.eclipse.jdt.core.JavaCore.start() of bundle org.eclipse.jdt.core.
	at
org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:1013)
	at
org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:969)
	at
org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:321)
	at
org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:266)
	at
org.eclipse.core.runtime.adaptor.EclipseClassLoader.findLocalClass(EclipseClassLoader.java:116)
	at
org.eclipse.osgi.framework.internal.core.BundleLoader.findLocalClass(BundleLoader.java:337)
	at
org.eclipse.osgi.framework.internal.core.SingleSourcePackage.loadClass(SingleSourcePackage.java:37)
	at
org.eclipse.osgi.framework.internal.core.BundleLoader.findClass(BundleLoader.java:386)
	at
org.eclipse.osgi.framework.internal.core.BundleLoader.findClass(BundleLoader.java:350)
	at
org.eclipse.osgi.framework.adaptor.core.AbstractClassLoader.loadClass(AbstractClassLoader.java:78)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:235)
	at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:302)
	at java.lang.Class.getDeclaredConstructors0(Native Method)
	at java.lang.Class.privateGetDeclaredConstructors(Class.java:1610)
	at java.lang.Class.getConstructor0(Class.java:1922)
	at java.lang.Class.getConstructor(Class.java:1019)
	at
org.eclipse.core.internal.plugins.PluginDescriptor.internalDoPluginActivation(PluginDescriptor.java:415)
	at
org.eclipse.core.internal.plugins.PluginDescriptor.doPluginActivation(PluginDescriptor.java:371)
	at
org.eclipse.core.internal.plugins.PluginDescriptor.getPlugin(PluginDescriptor.java:340)
	at
org.eclipse.core.internal.compatibility.PluginActivator.start(PluginActivator.java:28)
	at
org.eclipse.osgi.framework.internal.core.BundleContextImpl$2.run(BundleContextImpl.java:994)
	at java.security.AccessController.doPrivileged(Native Method)
	at
org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:988)
	at
org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:969)
	at
org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:321)
	at
org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:266)
	at
org.eclipse.core.runtime.adaptor.EclipseClassLoader.findLocalClass(EclipseClassLoader.java:116)
	at
org.eclipse.osgi.framework.internal.core.BundleLoader.findLocalClass(BundleLoader.java:337)
	at
org.eclipse.osgi.framework.internal.core.SingleSourcePackage.loadClass(SingleSourcePackage.java:37)
	at
org.eclipse.osgi.framework.internal.core.BundleLoader.findClass(BundleLoader.java:386)
	at
org.eclipse.osgi.framework.internal.core.BundleLoader.findClass(BundleLoader.java:350)
	at
org.eclipse.osgi.framework.adaptor.core.AbstractClassLoader.loadClass(AbstractClassLoader.java:78)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:235)
	at
org.eclipse.osgi.framework.internal.core.BundleLoader.loadClass(BundleLoader.java:275)
	at
org.eclipse.osgi.framework.internal.core.BundleHost.loadClass(BundleHost.java:227)
	at
org.eclipse.osgi.framework.internal.core.AbstractBundle.loadClass(AbstractBundle.java:1259)
	at
org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension(ConfigurationElement.java:152)
	at
org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension(ConfigurationElement.java:142)
	at
org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension(ConfigurationElement.java:129)
	at
org.eclipse.core.internal.registry.ConfigurationElementHandle.createExecutableExtension(ConfigurationElementHandle.java:48)
	at org.eclipse.ui.internal.WorkbenchPlugin$1.run(WorkbenchPlugin.java:240)
	at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:69)
	at
org.eclipse.ui.internal.WorkbenchPlugin.createExtension(WorkbenchPlugin.java:236)
	at
org.eclipse.ui.internal.decorators.FullDecoratorDefinition$1.run(FullDecoratorDefinition.java:63)
	at
org.eclipse.core.internal.runtime.InternalPlatform.run(InternalPlatform.java:1044)
	at org.eclipse.core.runtime.Platform.run(Platform.java:783)
	at
org.eclipse.ui.internal.decorators.FullDecoratorDefinition.internalGetDecorator(FullDecoratorDefinition.java:58)
	at
org.eclipse.ui.internal.decorators.FullDecoratorDefinition.decorateText(FullDecoratorDefinition.java:128)
	at
org.eclipse.ui.internal.decorators.FullTextDecoratorRunnable.run(FullTextDecoratorRunnable.java:26)
	at
org.eclipse.core.internal.runtime.InternalPlatform.run(InternalPlatform.java:1044)
	at org.eclipse.core.runtime.Platform.run(Platform.java:783)
	at
org.eclipse.ui.internal.decorators.DecoratorManager.safeDecorateText(DecoratorManager.java:343)
	at
org.eclipse.ui.internal.decorators.DecoratorManager.decorateText(DecoratorManager.java:310)
	at
org.eclipse.jface.viewers.DecoratingLabelProvider.getText(DecoratingLabelProvider.java:120)
	at
org.eclipse.jface.viewers.DecoratingLabelProvider.updateLabel(DecoratingLabelProvider.java:208)
	at
org.eclipse.jface.viewers.StructuredViewer.buildLabel(StructuredViewer.java:1855)
	at org.eclipse.jface.viewers.TreeViewer.doUpdateItem(TreeViewer.java:228)
	at
org.eclipse.jface.viewers.AbstractTreeViewer$UpdateItemSafeRunnable.run(AbstractTreeViewer.java:85)
	at
org.eclipse.core.internal.runtime.InternalPlatform.run(InternalPlatform.java:1044)
	at org.eclipse.core.runtime.Platform.run(Platform.java:783)
	at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:44)
	at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:148)
	at
org.eclipse.jface.viewers.AbstractTreeViewer.doUpdateItem(AbstractTreeViewer.java:621)
	at
org.eclipse.jface.viewers.StructuredViewer$UpdateItemSafeRunnable.run(StructuredViewer.java:434)
	at
org.eclipse.core.internal.runtime.InternalPlatform.run(InternalPlatform.java:1044)
	at org.eclipse.core.runtime.Platform.run(Platform.java:783)
	at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:44)
	at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:148)
	at
org.eclipse.jface.viewers.StructuredViewer.updateItem(StructuredViewer.java:1763)
	at
org.eclipse.jface.viewers.AbstractTreeViewer.createTreeItem(AbstractTreeViewer.java:535)
	at org.eclipse.jface.viewers.AbstractTreeViewer$1.run(AbstractTreeViewer.java:514)
	at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:69)
	at
org.eclipse.jface.viewers.AbstractTreeViewer.createChildren(AbstractTreeViewer.java:494)
	at org.eclipse.jface.viewers.AbstractTreeViewer$5.run(AbstractTreeViewer.java:983)
	at
org.eclipse.jface.viewers.StructuredViewer.preservingSelection(StructuredViewer.java:1201)
	at
org.eclipse.jface.viewers.AbstractTreeViewer.inputChanged(AbstractTreeViewer.java:973)
	at org.eclipse.jface.viewers.ContentViewer.setInput(ContentViewer.java:248)
	at org.eclipse.jface.viewers.StructuredViewer.setInput(StructuredViewer.java:1417)
	at
org.eclipse.ui.views.navigator.ResourceNavigator.createPartControl(ResourceNavigator.java:266)
	at org.eclipse.ui.internal.ViewReference.createPartHelper(ViewReference.java:305)
	at org.eclipse.ui.internal.ViewReference.createPart(ViewReference.java:180)
	at
org.eclipse.ui.internal.WorkbenchPartReference.getPart(WorkbenchPartReference.java:552)
	at
org.eclipse.ui.internal.WorkbenchPage$ActivationList.setActive(WorkbenchPage.java:3526)
	at org.eclipse.ui.internal.WorkbenchPage.restoreState(WorkbenchPage.java:2618)
	at org.eclipse.ui.internal.WorkbenchWindow.restoreState(WorkbenchWindow.java:1819)
	at org.eclipse.ui.internal.Workbench.doRestoreState(Workbench.java:2566)
	at org.eclipse.ui.internal.Workbench.access$14(Workbench.java:2515)
	at org.eclipse.ui.internal.Workbench$19.run(Workbench.java:1514)
	at org.eclipse.ui.internal.Workbench$16.run(Workbench.java:1263)
	at
org.eclipse.jface.operation.ModalContext.runInCurrentThread(ModalContext.java:346)
	at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:291)
	at
org.eclipse.jface.dialogs.ProgressMonitorDialog.run(ProgressMonitorDialog.java:447)
	at org.eclipse.ui.internal.Workbench.runStartupWithProgress(Workbench.java:1258)
	at org.eclipse.ui.internal.Workbench.restoreState(Workbench.java:1512)
	at org.eclipse.ui.internal.Workbench.access$12(Workbench.java:1491)
	at org.eclipse.ui.internal.Workbench$17.run(Workbench.java:1374)
	at
org.eclipse.core.internal.runtime.InternalPlatform.run(InternalPlatform.java:1044)
	at org.eclipse.core.runtime.Platform.run(Platform.java:783)
	at org.eclipse.ui.internal.Workbench.restoreState(Workbench.java:1318)
	at
org.eclipse.ui.internal.WorkbenchConfigurer.restoreState(WorkbenchConfigurer.java:183)
	at
org.eclipse.ui.application.WorkbenchAdvisor.openWindows(WorkbenchAdvisor.java:700)
	at org.eclipse.ui.internal.Workbench.init(Workbench.java:1034)
	at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1636)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:367)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:143)
	at org.eclipse.ui.internal.ide.IDEApplication.run(IDEApplication.java:103)
	at
org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:226)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:376)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:163)
	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:324)
	at org.eclipse.core.launcher.Main.invokeFramework(Main.java:334)
	at org.eclipse.core.launcher.Main.basicRun(Main.java:278)
	at org.eclipse.core.launcher.Main.run(Main.java:973)
	at org.eclipse.core.launcher.Main.main(Main.java:948)
Caused by: java.lang.IllegalArgumentException: Path for project must have only
one segment.
	at org.eclipse.core.internal.utils.Assert.isLegal(Assert.java:60)
	at
org.eclipse.core.internal.resources.WorkspaceRoot.getProject(WorkspaceRoot.java:134)
	at org.eclipse.jdt.internal.core.JavaModel.getJavaProject(JavaModel.java:204)
	at
org.eclipse.jdt.internal.core.JavaModelManager.loadVariablesAndContainers(JavaModelManager.java:1869)
	at
org.eclipse.jdt.internal.core.JavaModelManager.startup(JavaModelManager.java:2485)
	at org.eclipse.jdt.core.JavaCore.start(JavaCore.java:4116)
	at
org.eclipse.osgi.framework.internal.core.BundleContextImpl$2.run(BundleContextImpl.java:994)
	at java.security.AccessController.doPrivileged(Native Method)
	at
org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:988)
	... 116 more
Root exception:
java.lang.IllegalArgumentException: Path for project must have only one segment.
	at org.eclipse.core.internal.utils.Assert.isLegal(Assert.java:60)
	at
org.eclipse.core.internal.resources.WorkspaceRoot.getProject(WorkspaceRoot.java:134)
	at org.eclipse.jdt.internal.core.JavaModel.getJavaProject(JavaModel.java:204)
	at
org.eclipse.jdt.internal.core.JavaModelManager.loadVariablesAndContainers(JavaModelManager.java:1869)
	at
org.eclipse.jdt.internal.core.JavaModelManager.startup(JavaModelManager.java:2485)
	at org.eclipse.jdt.core.JavaCore.start(JavaCore.java:4116)
	at
org.eclipse.osgi.framework.internal.core.BundleContextImpl$2.run(BundleContextImpl.java:994)
	at java.security.AccessController.doPrivileged(Native Method)
	at
org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:988)
	at
org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:969)
	at
org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:321)
	at
org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:266)
	at
org.eclipse.core.runtime.adaptor.EclipseClassLoader.findLocalClass(EclipseClassLoader.java:116)
	at
org.eclipse.osgi.framework.internal.core.BundleLoader.findLocalClass(BundleLoader.java:337)
	at
org.eclipse.osgi.framework.internal.core.SingleSourcePackage.loadClass(SingleSourcePackage.java:37)
	at
org.eclipse.osgi.framework.internal.core.BundleLoader.findClass(BundleLoader.java:386)
	at
org.eclipse.osgi.framework.internal.core.BundleLoader.findClass(BundleLoader.java:350)
	at
org.eclipse.osgi.framework.adaptor.core.AbstractClassLoader.loadClass(AbstractClassLoader.java:78)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:235)
	at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:302)
	at java.lang.Class.getDeclaredConstructors0(Native Method)
	at java.lang.Class.privateGetDeclaredConstructors(Class.java:1610)
	at java.lang.Class.getConstructor0(Class.java:1922)
	at java.lang.Class.getConstructor(Class.java:1019)
	at
org.eclipse.core.internal.plugins.PluginDescriptor.internalDoPluginActivation(PluginDescriptor.java:415)
	at
org.eclipse.core.internal.plugins.PluginDescriptor.doPluginActivation(PluginDescriptor.java:371)
	at
org.eclipse.core.internal.plugins.PluginDescriptor.getPlugin(PluginDescriptor.java:340)
	at
org.eclipse.core.internal.compatibility.PluginActivator.start(PluginActivator.java:28)
	at
org.eclipse.osgi.framework.internal.core.BundleContextImpl$2.run(BundleContextImpl.java:994)
	at java.security.AccessController.doPrivileged(Native Method)
	at
org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:988)
	at
org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:969)
	at
org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:321)
	at
org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:266)
	at
org.eclipse.core.runtime.adaptor.EclipseClassLoader.findLocalClass(EclipseClassLoader.java:116)
	at
org.eclipse.osgi.framework.internal.core.BundleLoader.findLocalClass(BundleLoader.java:337)
	at
org.eclipse.osgi.framework.internal.core.SingleSourcePackage.loadClass(SingleSourcePackage.java:37)
	at
org.eclipse.osgi.framework.internal.core.BundleLoader.findClass(BundleLoader.java:386)
	at
org.eclipse.osgi.framework.internal.core.BundleLoader.findClass(BundleLoader.java:350)
	at
org.eclipse.osgi.framework.adaptor.core.AbstractClassLoader.loadClass(AbstractClassLoader.java:78)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:235)
	at
org.eclipse.osgi.framework.internal.core.BundleLoader.loadClass(BundleLoader.java:275)
	at
org.eclipse.osgi.framework.internal.core.BundleHost.loadClass(BundleHost.java:227)
	at
org.eclipse.osgi.framework.internal.core.AbstractBundle.loadClass(AbstractBundle.java:1259)
	at
org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension(ConfigurationElement.java:152)
	at
org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension(ConfigurationElement.java:142)
	at
org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension(ConfigurationElement.java:129)
	at
org.eclipse.core.internal.registry.ConfigurationElementHandle.createExecutableExtension(ConfigurationElementHandle.java:48)
	at org.eclipse.ui.internal.WorkbenchPlugin$1.run(WorkbenchPlugin.java:240)
	at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:69)
	at
org.eclipse.ui.internal.WorkbenchPlugin.createExtension(WorkbenchPlugin.java:236)
	at
org.eclipse.ui.internal.decorators.FullDecoratorDefinition$1.run(FullDecoratorDefinition.java:63)
	at
org.eclipse.core.internal.runtime.InternalPlatform.run(InternalPlatform.java:1044)
	at org.eclipse.core.runtime.Platform.run(Platform.java:783)
	at
org.eclipse.ui.internal.decorators.FullDecoratorDefinition.internalGetDecorator(FullDecoratorDefinition.java:58)
	at
org.eclipse.ui.internal.decorators.FullDecoratorDefinition.decorateText(FullDecoratorDefinition.java:128)
	at
org.eclipse.ui.internal.decorators.FullTextDecoratorRunnable.run(FullTextDecoratorRunnable.java:26)
	at
org.eclipse.core.internal.runtime.InternalPlatform.run(InternalPlatform.java:1044)
	at org.eclipse.core.runtime.Platform.run(Platform.java:783)
	at
org.eclipse.ui.internal.decorators.DecoratorManager.safeDecorateText(DecoratorManager.java:343)
	at
org.eclipse.ui.internal.decorators.DecoratorManager.decorateText(DecoratorManager.java:310)
	at
org.eclipse.jface.viewers.DecoratingLabelProvider.getText(DecoratingLabelProvider.java:120)
	at
org.eclipse.jface.viewers.DecoratingLabelProvider.updateLabel(DecoratingLabelProvider.java:208)
	at
org.eclipse.jface.viewers.StructuredViewer.buildLabel(StructuredViewer.java:1855)
	at org.eclipse.jface.viewers.TreeViewer.doUpdateItem(TreeViewer.java:228)
	at
org.eclipse.jface.viewers.AbstractTreeViewer$UpdateItemSafeRunnable.run(AbstractTreeViewer.java:85)
	at
org.eclipse.core.internal.runtime.InternalPlatform.run(InternalPlatform.java:1044)
	at org.eclipse.core.runtime.Platform.run(Platform.java:783)
	at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:44)
	at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:148)
	at
org.eclipse.jface.viewers.AbstractTreeViewer.doUpdateItem(AbstractTreeViewer.java:621)
	at
org.eclipse.jface.viewers.StructuredViewer$UpdateItemSafeRunnable.run(StructuredViewer.java:434)
	at
org.eclipse.core.internal.runtime.InternalPlatform.run(InternalPlatform.java:1044)
	at org.eclipse.core.runtime.Platform.run(Platform.java:783)
	at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:44)
	at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:148)
	at
org.eclipse.jface.viewers.StructuredViewer.updateItem(StructuredViewer.java:1763)
	at
org.eclipse.jface.viewers.AbstractTreeViewer.createTreeItem(AbstractTreeViewer.java:535)
	at org.eclipse.jface.viewers.AbstractTreeViewer$1.run(AbstractTreeViewer.java:514)
	at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:69)
	at
org.eclipse.jface.viewers.AbstractTreeViewer.createChildren(AbstractTreeViewer.java:494)
	at org.eclipse.jface.viewers.AbstractTreeViewer$5.run(AbstractTreeViewer.java:983)
	at
org.eclipse.jface.viewers.StructuredViewer.preservingSelection(StructuredViewer.java:1201)
	at
org.eclipse.jface.viewers.AbstractTreeViewer.inputChanged(AbstractTreeViewer.java:973)
	at org.eclipse.jface.viewers.ContentViewer.setInput(ContentViewer.java:248)
	at org.eclipse.jface.viewers.StructuredViewer.setInput(StructuredViewer.java:1417)
	at
org.eclipse.ui.views.navigator.ResourceNavigator.createPartControl(ResourceNavigator.java:266)
	at org.eclipse.ui.internal.ViewReference.createPartHelper(ViewReference.java:305)
	at org.eclipse.ui.internal.ViewReference.createPart(ViewReference.java:180)
	at
org.eclipse.ui.internal.WorkbenchPartReference.getPart(WorkbenchPartReference.java:552)
	at
org.eclipse.ui.internal.WorkbenchPage$ActivationList.setActive(WorkbenchPage.java:3526)
	at org.eclipse.ui.internal.WorkbenchPage.restoreState(WorkbenchPage.java:2618)
	at org.eclipse.ui.internal.WorkbenchWindow.restoreState(WorkbenchWindow.java:1819)
	at org.eclipse.ui.internal.Workbench.doRestoreState(Workbench.java:2566)
	at org.eclipse.ui.internal.Workbench.access$14(Workbench.java:2515)
	at org.eclipse.ui.internal.Workbench$19.run(Workbench.java:1514)
	at org.eclipse.ui.internal.Workbench$16.run(Workbench.java:1263)
	at
org.eclipse.jface.operation.ModalContext.runInCurrentThread(ModalContext.java:346)
	at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:291)
	at
org.eclipse.jface.dialogs.ProgressMonitorDialog.run(ProgressMonitorDialog.java:447)
	at org.eclipse.ui.internal.Workbench.runStartupWithProgress(Workbench.java:1258)
	at org.eclipse.ui.internal.Workbench.restoreState(Workbench.java:1512)
	at org.eclipse.ui.internal.Workbench.access$12(Workbench.java:1491)
	at org.eclipse.ui.internal.Workbench$17.run(Workbench.java:1374)
	at
org.eclipse.core.internal.runtime.InternalPlatform.run(InternalPlatform.java:1044)
	at org.eclipse.core.runtime.Platform.run(Platform.java:783)
	at org.eclipse.ui.internal.Workbench.restoreState(Workbench.java:1318)
	at
org.eclipse.ui.internal.WorkbenchConfigurer.restoreState(WorkbenchConfigurer.java:183)
	at
org.eclipse.ui.application.WorkbenchAdvisor.openWindows(WorkbenchAdvisor.java:700)
	at org.eclipse.ui.internal.Workbench.init(Workbench.java:1034)
	at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1636)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:367)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:143)
	at org.eclipse.ui.internal.ide.IDEApplication.run(IDEApplication.java:103)
	at
org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:226)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:376)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:163)
	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:324)
	at org.eclipse.core.launcher.Main.invokeFramework(Main.java:334)
	at org.eclipse.core.launcher.Main.basicRun(Main.java:278)
	at org.eclipse.core.launcher.Main.run(Main.java:973)
	at org.eclipse.core.launcher.Main.main(Main.java:948)
Comment 1 Jerome Lanneluc CLA 2005-09-08 10:39:43 EDT
Can you please attach your
<workspace>\.metadata\.plugins\org.eclipse.jdt.core\variablesAndContainers.dat
file to this bug ?
Comment 2 Nick Edgar CLA 2005-09-08 10:59:28 EDT
Created attachment 26956 [details]
variablesAndContainers.dat file
Comment 3 Nick Edgar CLA 2005-09-08 11:04:01 EDT
See also bug 109058.
Comment 4 Nick Edgar CLA 2005-09-08 11:04:55 EDT
I was able to get the workspace up by deleting the variablesAndContainers.dat
file.  Not sure what impact that has though.
Comment 5 Jerome Lanneluc CLA 2005-09-09 04:23:05 EDT
(In reply to comment #4)
> I was able to get the workspace up by deleting the variablesAndContainers.dat
> file.  Not sure what impact that has though.
> 
The only impact would be a slower startup the first time.
variablesAndContainers.dat is just a cache of the values of the previous
session. If missing, these would be computed on startup.

First investigation shows that these file was corrupted (or not written
entirely). I'll try to find out why and add some protection so that a corrupted
file is treated as missing.
Comment 6 Jerome Lanneluc CLA 2005-09-09 04:34:30 EDT
Bytes from poistion 2049 to 2157 were replaced with 0 (zero).

Looking at the code that write these bytes, I don't see anything wrong.
What VM and JCL are you using ? Could it be a bug in this VM+JCL ?
Comment 7 Jerome Lanneluc CLA 2005-09-09 04:36:53 EDT
(In reply to comment #6)
> Bytes from poistion 2049 to 2157 were replaced with 0 (zero).
> 
I meant bytes from position 2048 to 2157 (inclusive) were replaced with 0 (zero).
Comment 8 Nick Edgar CLA 2005-09-09 09:39:47 EDT
I'm using the Sun 1.4.2_01 VM, which has been very stable for me for a long time.
Comment 9 Philipe Mulet CLA 2005-09-21 12:18:20 EDT
+1 for adding fault-tolerance in this area for 3.1.1
Comment 10 Jerome Lanneluc CLA 2005-09-21 12:36:11 EDT
Added protection in JavaModelManager#loadVariablesAndContainers() so that
RuntimeExceptions thrown while reading the file are caught and logged, but they
are not rethrown. JDT Core can now start ok in the presence of a corrupt
variablesAndContainers.dat file.

This is released in both HEAD and R3_1_maintenance branch.
Comment 11 Olivier Thomann CLA 2005-09-26 10:56:02 EDT
Verified for 3.1.1 using M20050923-1430 by checking the code.