Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
2.2.0.beta1, 2.2.0.final
-
None
-
None
-
Windows 7 Enterprise 64bit.
Eclipse IDE for Java EE Developers, Juno 4.2.2, 32 bit
Oracle JDK "1.7.0_17" 32bitEclipse IDE for Java EE Developers, Juno 4.2.2, 64 bit
Oracle JDK "1.7.0_15" 64bit
Description
IvyDE leads to a corrupt workspace. Eclipse Juno will not start the workspace any more. Juno still starts with other workspaces.
I'm using Eclipse for my daily work and I got this error about two or three times a week.
First I used 2.2.0 beta1, then I switched to the trunk version (trunk from 2013-03-12 10:00), same error occurs.
As a manual workaround (which is of course very annoying) you can
- de-install IvyDE manually (i.e. remove it from eclipse's plugins / features directory)
- start eclipse, re-install IvyDE
The following Fix applied to the svn trunk (from 2013-03-12 10:00) PreferenceInitializer#initializeDefaultPreferences works for me.
After installing the fixed IvyDE (starting eclipse with a new empty workspace, uninstalling the trunk version, installing the fixed trunk version) I could successfully start my workspace again.
public void initializeDefaultPreferences() { Display.getDefault().syncExec( new Runnable() { public void run() { IPreferenceStore store = IvyPlugin.getDefault().getPreferenceStore(); store.setDefault(PreferenceConstants.P_BOOLEAN, true); ... ... store.setDefault(PreferenceConstants.ERROR_POPUP, DEFAULT_ERROR_POPUP); } }); }
---- ---- ---- ---- BEGIN <workspace>/.metadata/.log ---- ---- ---- ----
...
...
!ENTRY org.apache.ivyde.eclipse 1 0 2013-03-15 11:25:08.298
!MESSAGE starting IvyDE plugin
!ENTRY org.eclipse.equinox.preferences 4 2 2013-03-15 11:25:08.376
!MESSAGE Problems occurred when invoking code from plug-in: "org.eclipse.equinox.preferences".
!STACK 0
java.lang.ExceptionInInitializerError
at org.apache.ivyde.eclipse.ui.preferences.PreferenceInitializer.initializeDefaultPreferences(PreferenceInitializer.java:193)
at org.eclipse.core.internal.preferences.PreferenceServiceRegistryHelper$1.run(PreferenceServiceRegistryHelper.java:300)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
at org.eclipse.core.internal.preferences.PreferenceServiceRegistryHelper.runInitializer(PreferenceServiceRegistryHelper.java:303)
at org.eclipse.core.internal.preferences.PreferenceServiceRegistryHelper.applyRuntimeDefaults(PreferenceServiceRegistryHelper.java:131)
at org.eclipse.core.internal.preferences.PreferencesService.applyRuntimeDefaults(PreferencesService.java:368)
at org.eclipse.core.internal.preferences.DefaultPreferences.applyRuntimeDefaults(DefaultPreferences.java:166)
at org.eclipse.core.internal.preferences.DefaultPreferences.load(DefaultPreferences.java:237)
at org.eclipse.core.internal.preferences.EclipsePreferences.create(EclipsePreferences.java:409)
at org.eclipse.core.internal.preferences.EclipsePreferences.internalNode(EclipsePreferences.java:663)
at org.eclipse.core.internal.preferences.EclipsePreferences.node(EclipsePreferences.java:805)
at org.eclipse.core.internal.preferences.AbstractScope.getNode(AbstractScope.java:38)
at org.eclipse.core.runtime.preferences.DefaultScope.getNode(DefaultScope.java:76)
at org.eclipse.ui.preferences.ScopedPreferenceStore.getDefaultPreferences(ScopedPreferenceStore.java:250)
at org.eclipse.ui.preferences.ScopedPreferenceStore.getPreferenceNodes(ScopedPreferenceStore.java:285)
at org.eclipse.ui.preferences.ScopedPreferenceStore.internalGet(ScopedPreferenceStore.java:475)
at org.eclipse.ui.preferences.ScopedPreferenceStore.getInt(ScopedPreferenceStore.java:501)
at org.apache.ivyde.eclipse.ui.preferences.IvyDEPreferenceStoreHelper.getIvyConsoleLogLevel(IvyDEPreferenceStoreHelper.java:206)
at org.apache.ivyde.eclipse.ui.console.IvyConsole.<init>(IvyConsole.java:78)
at org.apache.ivyde.eclipse.IvyPlugin.start(IvyPlugin.java:156)
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)
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:440)
at org.eclipse.osgi.internal.loader.BundleLoader.setLazyTrigger(BundleLoader.java:263)
at org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:107)
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(ClassLoader.java:356)
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.jdt.core.JavaCore.computeClasspathContainerInitializer(JavaCore.java:3175)
at org.eclipse.jdt.core.JavaCore.getClasspathContainerInitializer(JavaCore.java:3151)
at org.eclipse.jdt.internal.core.JavaModelManager.initializeContainer(JavaModelManager.java:2824)
at org.eclipse.jdt.internal.core.JavaModelManager.getClasspathContainer(JavaModelManager.java:1878)
at org.eclipse.jdt.core.JavaCore.getClasspathContainer(JavaCore.java:3128)
at org.eclipse.jdt.internal.core.JavaProject.resolveClasspath(JavaProject.java:2691)
at org.eclipse.jdt.internal.core.JavaProject.resolveClasspath(JavaProject.java:2855)
at org.eclipse.jdt.internal.core.JavaProject.getResolvedClasspath(JavaProject.java:1960)
at org.eclipse.jdt.internal.core.DeltaProcessor.createExternalArchiveDelta(DeltaProcessor.java:954)
at org.eclipse.jdt.internal.core.DeltaProcessor.checkExternalArchiveChanges(DeltaProcessor.java:794)
at org.eclipse.jdt.internal.core.DeltaProcessor.resourceChanged(DeltaProcessor.java:2023)
at org.eclipse.jdt.internal.core.DeltaProcessingState.resourceChanged(DeltaProcessingState.java:470)
at org.eclipse.core.internal.events.NotificationManager$1.run(NotificationManager.java:291)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
at org.eclipse.core.internal.events.NotificationManager.notify(NotificationManager.java:285)
at org.eclipse.core.internal.events.NotificationManager.handleEvent(NotificationManager.java:267)
at org.eclipse.core.internal.resources.Workspace.broadcastEvent(Workspace.java:390)
at org.eclipse.core.internal.resources.Resource.refreshLocal(Resource.java:1698)
at com.serena.eclipse.dimensions.internal.team.core.DMRepositoryProvider.ignoreFilesLeftByDMCommandLineClient(Unknown Source)
at com.serena.eclipse.dimensions.internal.team.core.DMTeamPlugin$1.runInWorkspace(Unknown Source)
at org.eclipse.core.internal.resources.InternalWorkspaceJob.run(InternalWorkspaceJob.java:38)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53)
Caused by: org.eclipse.swt.SWTException: Invalid thread access
at org.eclipse.swt.SWT.error(SWT.java:4361)
at org.eclipse.swt.SWT.error(SWT.java:4276)
at org.eclipse.swt.SWT.error(SWT.java:4247)
at org.eclipse.swt.widgets.Display.error(Display.java:1258)
at org.eclipse.swt.widgets.Display.checkDevice(Display.java:764)
at org.eclipse.swt.widgets.Display.getSystemFont(Display.java:2459)
at org.eclipse.jface.preference.PreferenceConverter.<clinit>(PreferenceConverter.java:84)
... 66 more
!ENTRY org.apache.ivyde.eclipse 1 0 2013-03-15 11:25:08.391
!MESSAGE IvyDE plugin started
!ENTRY org.eclipse.osgi 4 0 2013-03-15 11:25:09.968
!MESSAGE Application error
!STACK 1
org.eclipse.swt.SWTException: Failed to execute runnable (java.lang.NoClassDefFoundError: Could not initialize class org.eclipse.jface.preference.PreferenceConverter)
at org.eclipse.swt.SWT.error(SWT.java:4361)
at org.eclipse.swt.SWT.error(SWT.java:4276)
at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:138)
at org.eclipse.swt.widgets.Display.setSynchronizer(Display.java:4613)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2460)
at org.eclipse.ui.internal.Workbench.access$7(Workbench.java:2441)
at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:586)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:543)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:124)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:353)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:180)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:629)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:584)
at org.eclipse.equinox.launcher.Main.run(Main.java:1438)
Caused by: java.lang.NoClassDefFoundError: Could not initialize class org.eclipse.jface.preference.PreferenceConverter
at org.apache.ivyde.eclipse.ui.editors.xml.ColorManager.rebind(ColorManager.java:107)
at org.apache.ivyde.eclipse.ui.editors.xml.ColorManager.refreshFromStore(ColorManager.java:98)
at org.apache.ivyde.eclipse.IvyPlugin$1.run(IvyPlugin.java:133)
at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:135)
... 20 more
...
...
!ENTRY org.eclipse.core.jobs 4 2 2013-03-15 11:25:55.243
!MESSAGE An internal error occurred during: "IvyDE resolve".
!STACK 0
java.lang.NullPointerException
at org.apache.ivyde.eclipse.IvyPlugin.getPreferenceStoreHelper(IvyPlugin.java:417)
at org.apache.ivyde.eclipse.cpcontainer.IvyClasspathContainerConfiguration.getInheritedSettingsSetup(IvyClasspathContainerConfiguration.java:210)
at org.apache.ivyde.eclipse.cpcontainer.IvyClasspathContainerState.getIvySettingsPath(IvyClasspathContainerState.java:45)
at org.apache.ivyde.eclipse.CachedIvy.doGetIvy(CachedIvy.java:128)
at org.apache.ivyde.eclipse.CachedIvy.getIvy(CachedIvy.java:120)
at org.apache.ivyde.eclipse.resolve.IvyResolveJob.doRun(IvyResolveJob.java:145)
at org.apache.ivyde.eclipse.resolve.IvyResolveJob.run(IvyResolveJob.java:85)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53)
!ENTRY org.eclipse.core.resources 4 566 2013-03-15 11:25:55.321
!MESSAGE Workspace was not properly initialized or has already shutdown.
!ENTRY org.eclipse.core.jobs 4 1 2013-03-15 11:25:55.321
!MESSAGE Worker thread ended job: Refreshing workspace(12), but still holds rule: ThreadJob(Refreshing workspace(12),[P/riad])
---- ---- ---- ---- END <workspace>/.metadata/.log ---- ---- ---- ----
Cheers
Bernd