Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Problems with Darkest Dark (DevStyle) plugin #16

Closed
mauromol opened this issue Jul 1, 2020 · 5 comments
Closed

Problems with Darkest Dark (DevStyle) plugin #16

mauromol opened this issue Jul 1, 2020 · 5 comments
Labels
bug Something isn't working

Comments

@mauromol
Copy link

mauromol commented Jul 1, 2020

I installed Eclipse 2020-06 flatpak and, after installing Genuitec's DevStyle plugin to get the Darkest Dark theme, I have this error on Eclipse start, which also pops up as an error dialog:

eclipse.buildId=4.16.0.I20200604-0540
java.version=11.0.7
java.vendor=Oracle Corporation
BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=it_IT
Framework arguments:  -product org.eclipse.epp.package.java.product
Command-line arguments:  -os linux -ws gtk -arch x86_64 -product org.eclipse.epp.package.java.product

org.eclipse.ui
Error
Wed Jul 01 08:02:35 GMT 2020
An internal error has occurred.

java.lang.NoClassDefFoundError: org/eclipse/core/resources/IResourceChangeListener
	at java.base/java.lang.ClassLoader.defineClass1(Native Method)
	at java.base/java.lang.ClassLoader.defineClass(ClassLoader.java:1017)
	at org.eclipse.osgi.internal.loader.ModuleClassLoader.defineClass(ModuleClassLoader.java:294)
	at org.eclipse.osgi.internal.loader.classpath.ClasspathManager.defineClass(ClasspathManager.java:717)
	at org.eclipse.osgi.internal.loader.classpath.ClasspathManager.findClassImpl(ClasspathManager.java:640)
	at org.eclipse.osgi.internal.loader.classpath.ClasspathManager.findLocalClassImpl(ClasspathManager.java:608)
	at org.eclipse.osgi.internal.loader.classpath.ClasspathManager.findLocalClassImpl(ClasspathManager.java:588)
	at org.eclipse.osgi.internal.loader.classpath.ClasspathManager.findLocalClass(ClasspathManager.java:567)
	at org.eclipse.osgi.internal.loader.ModuleClassLoader.findLocalClass(ModuleClassLoader.java:346)
	at org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:398)
	at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:477)
	at org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:171)
	at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:522)
	at com.genuitec.eclipse.startup.workspace.WorkspaceTracker$EarlyStartup$1.runSafelyInUIThread(WorkspaceTracker.java:367)
	at com.genuitec.eclipse.core.ui.util.SafeUIJob.runInUIThread(SafeUIJob.java:117)
	at com.genuitec.eclipse.core.ui.util.SafeUIJob.access$0(SafeUIJob.java:99)
	at com.genuitec.eclipse.core.ui.util.SafeUIJob$1.run(SafeUIJob.java:79)
	at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:40)
	at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:185)
	at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4928)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:4449)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1158)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1047)
	at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155)
	at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:658)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:557)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:154)
	at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:150)
	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:137)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:107)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:401)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:566)
	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:657)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:594)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1447)
	at org.eclipse.equinox.launcher.Main.main(Main.java:1420)
Caused by: java.lang.ClassNotFoundException: org.eclipse.core.resources.IResourceChangeListener cannot be found by com.genuitec.eclipse.startup.workspace_1.11.0.202005041925
	at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:516)
	at org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:171)
	at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:522)
	... 43 more

If I look at the whole error log, this error is preceded by many instances of this:

eclipse.buildId=4.16.0.I20200604-0540
java.version=11.0.7
java.vendor=Oracle Corporation
BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=it_IT
Framework arguments:  -product org.eclipse.epp.package.java.product
Command-line arguments:  -os linux -ws gtk -arch x86_64 -product org.eclipse.epp.package.java.product

com.genuitec.eclipse.startup.workspace
Error
Wed Jul 01 08:02:35 GMT 2020
FrameworkEvent ERROR

java.lang.IllegalStateException: Invalid class loader from a refreshed bundle is being used: com.genuitec.eclipse.startup.workspace_1.11.0.202005041925
	at org.eclipse.osgi.internal.loader.BundleLoader.getProviderLoader(BundleLoader.java:982)
	at org.eclipse.osgi.internal.loader.BundleLoader.findRequiredSource(BundleLoader.java:1216)
	at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:467)
	at org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:171)
	at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:522)
	at java.base/java.lang.ClassLoader.defineClass1(Native Method)
	at java.base/java.lang.ClassLoader.defineClass(ClassLoader.java:1017)
	at org.eclipse.osgi.internal.loader.ModuleClassLoader.defineClass(ModuleClassLoader.java:294)
	at org.eclipse.osgi.internal.loader.classpath.ClasspathManager.defineClass(ClasspathManager.java:717)
	at org.eclipse.osgi.internal.loader.classpath.ClasspathManager.findClassImpl(ClasspathManager.java:640)
	at org.eclipse.osgi.internal.loader.classpath.ClasspathManager.findLocalClassImpl(ClasspathManager.java:608)
	at org.eclipse.osgi.internal.loader.classpath.ClasspathManager.findLocalClassImpl(ClasspathManager.java:588)
	at org.eclipse.osgi.internal.loader.classpath.ClasspathManager.findLocalClass(ClasspathManager.java:567)
	at org.eclipse.osgi.internal.loader.ModuleClassLoader.findLocalClass(ModuleClassLoader.java:346)
	at org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:398)
	at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:477)
	at org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:171)
	at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:522)
	at com.genuitec.eclipse.startup.workspace.WorkspaceTracker$EarlyStartup$1.runSafelyInUIThread(WorkspaceTracker.java:367)
	at com.genuitec.eclipse.core.ui.util.SafeUIJob.runInUIThread(SafeUIJob.java:117)
	at com.genuitec.eclipse.core.ui.util.SafeUIJob.access$0(SafeUIJob.java:99)
	at com.genuitec.eclipse.core.ui.util.SafeUIJob$1.run(SafeUIJob.java:79)
	at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:40)
	at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:185)
	at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4928)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:4449)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1158)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1047)
	at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155)
	at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:658)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:557)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:154)
	at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:150)
	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:137)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:107)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:401)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:566)
	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:657)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:594)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1447)
	at org.eclipse.equinox.launcher.Main.main(Main.java:1420)

Apart from this, the theme and the other DevStyle features seems to work fine, although I don't know the consequences of the above errors.

Any idea on what is going on? Is this something that you can fix on your side or something that Genuitec should try to fix on their side? I may try to contact them but some context would be useful.

@mauromol
Copy link
Author

I still don't understand why this problem happened, however it disappeared once my flatpak package was upgraded from Eclipse 2020-06 to 2020-09 and I followed the migration procedure to reinstall all plugins (including DevStyle).

@TheHuge
Copy link

TheHuge commented Sep 29, 2020

Hi @mauromol, could you please point me to the plugins migration procedure you are mentioning please?
I encounter a similar issue but only since I'm opening a workspace (existing or new) after I've upgraded to 2020-09.
image

@mauromol
Copy link
Author

@HL72 after the flatpak package was (automatically) upgraded from 2020-06 to 2020-09, Eclipse was not starting any more, due to #12 . Then I had to start the Eclipse flatpak by adding -clean command line option: in this way Eclipse started again. As soon as it started for the first time (perhaps after choosing a workspace, I can't remember exactly) a migration wizard I had never seen before shown up and asked me to upgrade the installed plugins. This procedure is not perfect because it seems like it uses a mixture of old and new update sites, but in some way it worked for the built in plugins (I probably just had to remove some of my third-party plugins and then reinstall them later on from the correct new update site). If I remember well, DevStyle was one of the plugins that was automatically upgraded in this way (or perhaps it did not require any update at all).

This said, after my flatpak installation of Eclipse 2020-09 was back working, I never saw this exception any more... almost. I mean, I'm not sure the upgrade was indeed the complete solution, because I still have an old workspace that keeps on showing this problem even when I open Eclipse 2020-09 on it, but all the other old workspaces I was using don't exhibit this problem any more.

I really don't know what is going on here, probably a race condition? The Resource plugin is indeed present in the flatpak package, so I don't understand why that exception pops up.

I may suggest you to try to rebuild your workspace from scratch (by opening Eclipse on an empty workspace folder and then import back your projects there), perhaps you will fix this problem.

I also opened a report to DevStyle developers at https://www.genuitec.com/forums/topic/exception-thrown-whenever-eclipse-starts-when-using-eclipse-flatpak-distribution/ but it was not fruitful so far, so maybe you can participate to the discussion there too.

@mbooth101
Copy link
Collaborator

@HL72 @mauromol FWIW, the Spectrum theme plug-in is a pretty decent successor to Darkest Dark theme plug-in:

https://marketplace.eclipse.org/content/eclipse-spectrum-dark-theme

It might be worth checking out.

@ilopezv
Copy link

ilopezv commented Mar 22, 2021

Same problem on STS 4.8 and STS 4.9 in various laptops

@Mailaender Mailaender added the bug Something isn't working label Apr 23, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

5 participants