4
votes

Ok, I have a Java presentation to provide this morning and here I am in front of the audience, not able to load Eclipse with no "obvious" error to fix it quickly in a humane way without crawling in forums and going through the whole debugging process.

If somebody knows how can I upload the whole error log file let me know, as it still goes for pages.

I searched through the web and the possible culprits seem to be so numerous, so I try yet-another SOS here (each case seems to be so user-specific)

Any help or hint about how to solve this issue is very welcome.

Please consider asking questions before downvoting, some people tend to be quick shooters.

PS (off-topic) : I've been coding on this IDE for 15 years and I find it unacceptable to still have to debug your own IDE instead of spending time being productive on your core code, not to mention public embarrassments like the one I am going through now.

I never have this in Visual Studio for example. This IDE is too fragile to be considered "normal", acceptable, and an industry professional level. I really like eclipse but this aspect is a curse.

!SESSION 2017-03-20 09:59:30.753 ----------------------------------------------- eclipse.buildId=4.6.1.M20160907-1200 java.version=1.8.0_111 java.vendor=Oracle Corporation BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_US Framework arguments: -product org.eclipse.epp.package.java.product Command-line arguments: -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.java.product !ENTRY org.eclipse.equinox.ds 2 0 2017-03-20 10:00:05.599 !MESSAGE [SCR - WorkThread] Timeout occurred! Thread was blocked on processing [QueuedJob] WorkPerformer: org.eclipse.equinox.internal.ds.SCRManager@47eb4257; actionType 1 !ENTRY org.eclipse.equinox.ds 2 0 2017-03-20 10:00:05.784 !MESSAGE [SCR] Enabling components of bundle org.eclipse.ui.trace did not complete in 30000 ms !ENTRY org.eclipse.core.runtime 4 0 2017-03-20 10:00:11.004 !MESSAGE FrameworkEvent ERROR !STACK 0 org.osgi.framework.BundleException: Unable to acquire the state change lock for the module: osgi.identity; type="osgi.bundle"; version:Version="3.12.0.v20160606-1342"; osgi.identity="org.eclipse.core.runtime"; singleton:="true" [id=86] STARTED [STARTED] at org.eclipse.osgi.container.Module.lockStateChange(Module.java:337) at org.eclipse.osgi.container.Module.start(Module.java:401) at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1620) at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1600) at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.doContainerStartLevel(ModuleContainer.java:1571) at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1514) at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1) at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230) at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:340) Caused by: java.util.concurrent.TimeoutException: Timeout after waiting 5 seconds to acquire the lock. at org.eclipse.osgi.container.Module.lockStateChange(Module.java:334) ... 8 more Root exception: java.util.concurrent.TimeoutException: Timeout after waiting 5 seconds to acquire the lock. at org.eclipse.osgi.container.Module.lockStateChange(Module.java:334) at org.eclipse.osgi.container.Module.start(Module.java:401) at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1620) at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1600) at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.doContainerStartLevel(ModuleContainer.java:1571) at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1514) at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1) at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230) at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:340) !ENTRY org.eclipse.osgi 2 0 2017-03-20 10:00:16.064 !MESSAGE While loading class "org.eclipse.oomph.p2.internal.core.P2CorePlugin$Implementation", thread "Thread[Start Level: Equinox Container: 80253188-4b0d-0017-1194-c4515ec13e6c,5,main]" timed out waiting (5010ms) for thread "Thread[Component Resolve Thread,5,main]" to finish starting bundle "org.eclipse.core.runtime_3.12.0.v20160606-1342 [86]". To avoid deadlock, thread "Thread[Start Level: Equinox Container: 80253188-4b0d-0017-1194-c4515ec13e6c,5,main]" is proceeding but "org.eclipse.oomph.p2.internal.core.P2CorePlugin$Implementation" may not be fully initialized. !STACK 0 org.osgi.framework.BundleException: Unable to acquire the state change lock for the module: osgi.identity; type="osgi.bundle"; version:Version="3.12.0.v20160606-1342"; osgi.identity="org.eclipse.core.runtime"; singleton:="true" [id=86] STARTED [STARTED] at org.eclipse.osgi.container.Module.lockStateChange(Module.java:337) at org.eclipse.osgi.container.Module.start(Module.java:401) at org.eclipse.osgi.framework.util.SecureAction.start(SecureAction.java:470) at org.eclipse.osgi.internal.hooks.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:107) at org.eclipse.osgi.internal.loader.classpath.ClasspathManager.findLocalClass(ClasspathManager.java:529) at org.eclipse.osgi.internal.loader.ModuleClassLoader.findLocalClass(ModuleClassLoader.java:325) at org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:345) at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:423) at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:372) at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:364) at org.eclipse.osgi.internal.framework.BundleContextImpl.loadBundleActivator(BundleContextImpl.java:757) at org.eclipse.osgi.internal.framework.BundleContextImpl.start(BundleContextImpl.java:711) at org.eclipse.osgi.internal.framework.EquinoxBundle.startWorker0(EquinoxBundle.java:932) at org.eclipse.osgi.internal.framework.EquinoxBundle$EquinoxModule.startWorker(EquinoxBundle.java:309) at org.eclipse.osgi.container.Module.doStart(Module.java:581) at org.eclipse.osgi.container.Module.start(Module.java:449) at org.eclipse.osgi.framework.util.SecureAction.start(SecureAction.java:470) at org.eclipse.osgi.internal.hooks.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:107) at org.eclipse.osgi.internal.loader.classpath.ClasspathManager.findLocalClass(ClasspathManager.java:529) at org.eclipse.osgi.internal.loader.ModuleClassLoader.findLocalClass(ModuleClassLoader.java:325) at org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:345) at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:423) at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:372) at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:364) at org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:161) at java.lang.ClassLoader.loadClass(ClassLoader.java:357) at org.eclipse.osgi.internal.framework.EquinoxBundle.loadClass(EquinoxBundle.java:564) at org.eclipse.equinox.internal.ds.model.ServiceComponent.createInstance(ServiceComponent.java:493) at org.eclipse.equinox.internal.ds.model.ServiceComponentProp.createInstance(ServiceComponentProp.java:270) at org.eclipse.equinox.internal.ds.model.ServiceComponentProp.build(ServiceComponentProp.java:331) at org.eclipse.equinox.internal.ds.InstanceProcess.buildComponent(InstanceProcess.java:620) at org.eclipse.equinox.internal.ds.ServiceReg.getService(ServiceReg.java:53) at org.eclipse.osgi.internal.serviceregistry.ServiceFactoryUse$1.run(ServiceFactoryUse.java:212) at java.security.AccessController.doPrivileged(Native Method) at org.eclipse.osgi.internal.serviceregistry.ServiceFactoryUse.factoryGetService(ServiceFactoryUse.java:210) at org.eclipse.osgi.internal.serviceregistry.ServiceFactoryUse.getService(ServiceFactoryUse.java:111) at org.eclipse.osgi.internal.serviceregistry.ServiceConsumer$2.getService(ServiceConsumer.java:45) at org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.getService(ServiceRegistrationImpl.java:496) at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.getService(ServiceRegistry.java:461) at org.eclipse.osgi.internal.framework.BundleContextImpl.getService(BundleContextImpl.java:619) at org.eclipse.equinox.internal.p2.core.Activator.registerAgent(Activator.java:175) at org.eclipse.equinox.internal.p2.core.Activator.start(Activator.java:244) at org.eclipse.osgi.internal.framework.BundleContextImpl$3.run(BundleContextImpl.java:774) at org.eclipse.osgi.internal.framework.BundleContextImpl$3.run(BundleContextImpl.java:1) at java.security.AccessController.doPrivileged(Native Method) at org.eclipse.osgi.internal.framework.BundleContextImpl.startActivator(BundleContextImpl.java:767) at org.eclipse.osgi.internal.framework.BundleContextImpl.start(BundleContextImpl.java:724) at org.eclipse.osgi.internal.framework.EquinoxBundle.startWorker0(EquinoxBundle.java:932) at org.eclipse.osgi.internal.framework.EquinoxBundle$EquinoxModule.startWorker(EquinoxBundle.java:309) at org.eclipse.osgi.container.Module.doStart(Module.java:581) at org.eclipse.osgi.container.Module.start(Module.java:449) at org.eclipse.osgi.framework.util.SecureAction.start(SecureAction.java:470) at org.eclipse.osgi.internal.hooks.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:107) at org.eclipse.osgi.internal.loader.classpath.ClasspathManager.findLocalClass(ClasspathManager.java:529) at org.eclipse.osgi.internal.loader.ModuleClassLoader.findLocalClass(ModuleClassLoader.java:325) at org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:345) at org.eclipse.osgi.internal.loader.sources.SingleSourcePackage.loadClass(SingleSourcePackage.java:36) at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:407) at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:372) at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:364) at org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:161) at java.lang.ClassLoader.loadClass(ClassLoader.java:357) at java.lang.Class.getDeclaredConstructors0(Native Method) at java.lang.Class.privateGetDeclaredConstructors(Class.java:2671) at java.lang.Class.getConstructor0(Class.java:3075) at java.lang.Class.newInstance(Class.java:412) at org.eclipse.osgi.internal.framework.BundleContextImpl.loadBundleActivator(BundleContextImpl.java:758) at org.eclipse.osgi.internal.framework.BundleContextImpl.start(BundleContextImpl.java:711) at org.eclipse.osgi.internal.framework.EquinoxBundle.startWorker0(EquinoxBundle.java:932) at org.eclipse.osgi.internal.framework.EquinoxBundle$EquinoxModule.startWorker(EquinoxBundle.java:309) at org.eclipse.osgi.container.Module.doStart(Module.java:581) at org.eclipse.osgi.container.Module.start(Module.java:449) at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1620) at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1600) at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.doContainerStartLevel(ModuleContainer.java:1571) at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1514) at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1) at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230) at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:340) Caused by: java.util.concurrent.TimeoutException: Timeout after waiting 5 seconds to acquire the lock. at org.eclipse.osgi.container.Module.lockStateChange(Module.java:334) ... 78 more

2
I very much agree with what you said about the IDE and I had a similar problem with Windows which I couldn't resolve, I fixed it by installing an older version.px06
I'm voting to close this question as off-topic because It is just complaint about eclipse, doesn't have any informations that are needed to help. Author says that VisualStudio is so perfect because it is better than eclipse. No value in this complaint.Krzysztof Cichocki
I am not complaining I am asking for help and offering the log errors. Why are you so rude ?Mehdi LAMRANI
@Krzysztof Cichocki Author has 15+ years coding in both IDEs and has the right to express his personal views / field experience feedback. Edited the "off-topic" part as PS. Now let's move on, shall we...Mehdi LAMRANI

2 Answers

11
votes

A couple of options

  1. Have you tried starting eclipse with the argument -Dosgi.locking=none?
  2. Delete the lock files under the eclipse directory configuration/org.eclipse.osgi/.manager
0
votes

Go to c:\eclipse\eclipse\configuration, edit the file config and remove the line org.eclipse.equinox.simpleconfigurator....