You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
openjdk version "16" 2021-03-16
OpenJDK Runtime Environment AdoptOpenJDK (build 16+36)
Eclipse OpenJ9 VM AdoptOpenJDK (build openj9-0.25.0, JRE 16 Windows 10 amd64-64-Bit Compressed References 20210311_69 (JIT enabled, AOT enabled)
OpenJ9 - 022d65424
OMR - 09514431e
JCL - 0c11227a21a based on jdk-16+36)
Summary of problem
In the Eclipse Java IDE I'm facing a java.lang.IllegalAccessError if and only if running Eclipse with the AdoptOpenJDK OpenJ9 Java 16 VM. This did not happen before with an Openj9 Java 15 VM and cannot be reproduced with the current AdoptOpenJDK HotSpot Java 16 VM.
It can be reproduced with Eclipse SDK 4.19 on Windows 10 and on Linux by trying to open the Clean Ups profile dialog: in Window > Preferences: Java > Code Style > Clean Up hitting the Edit... button.
java.lang.IllegalAccessError
at java.base/java.lang.invoke.MethodHandleResolver.resolveInvokeDynamic(MethodHandleResolver.java:208)
at org.eclipse.jdt.internal.ui.preferences.cleanup.CleanUpTabPage.registerSlavePreference(CleanUpTabPage.java:150)
at org.eclipse.jdt.internal.ui.preferences.cleanup.CleanUpTabPage.registerSlavePreference(CleanUpTabPage.java:123)
at org.eclipse.jdt.internal.ui.preferences.cleanup.CodeStyleTabPage.doCreatePreferences(CodeStyleTabPage.java:114)
at org.eclipse.jdt.internal.ui.preferences.formatter.ModifyDialogTabPage.createContents(ModifyDialogTabPage.java:847)
at org.eclipse.jdt.internal.ui.preferences.cleanup.CleanUpModifyDialog.addTabPage(CleanUpModifyDialog.java:145)
at org.eclipse.jdt.internal.ui.preferences.cleanup.CleanUpModifyDialog.addPages(CleanUpModifyDialog.java:134)
at org.eclipse.jdt.internal.ui.preferences.cleanup.CleanUpModifyDialog.createMainArea(CleanUpModifyDialog.java:104)
at org.eclipse.jdt.internal.ui.preferences.formatter.ModifyDialog.createDialogArea(ModifyDialog.java:1242)
at org.eclipse.jdt.internal.ui.preferences.cleanup.CleanUpModifyDialog.createDialogArea(CleanUpModifyDialog.java:151)
at org.eclipse.jface.dialogs.Dialog.createContents(Dialog.java:767)
at org.eclipse.jface.window.Window.create(Window.java:431)
at org.eclipse.jface.dialogs.Dialog.create(Dialog.java:1094)
at org.eclipse.jface.dialogs.StatusDialog.create(StatusDialog.java:130)
at org.eclipse.jdt.internal.ui.preferences.cleanup.CleanUpModifyDialog.create(CleanUpModifyDialog.java:82)
at org.eclipse.jface.window.Window.open(Window.java:788)
at org.eclipse.jdt.internal.ui.preferences.formatter.ProfileConfigurationBlock$ButtonController.modifyButtonPressed(ProfileConfigurationBlock.java:230)
at org.eclipse.jdt.internal.ui.preferences.formatter.ProfileConfigurationBlock$ButtonController.widgetSelected(ProfileConfigurationBlock.java:175)
at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:252)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89)
at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4209)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1043)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4026)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3626)
at org.eclipse.jface.window.Window.runEventLoop(Window.java:823)
at org.eclipse.jface.window.Window.open(Window.java:799)
at org.eclipse.ui.internal.OpenPreferencesAction.run(OpenPreferencesAction.java:66)
at org.eclipse.jface.action.Action.runWithEvent(Action.java:474)
at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:580)
at org.eclipse.jface.action.ActionContributionItem.lambda$4(ActionContributionItem.java:414)
at org.eclipse.jface.action.ActionContributionItem$$Lambda$348/0x0000000070d7da78.handleEvent(Unknown Source)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89)
at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4209)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1043)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4026)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3626)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1157)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046)
at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155)
at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:644)
at org.eclipse.ui.internal.Workbench$$Lambda$127/0x000000006c131c60.run(Unknown Source)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:551)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:156)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
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:78)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:567)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:653)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:590)
at org.eclipse.equinox.launcher.Main.run(Main.java:1461)
at org.eclipse.equinox.launcher.Main.main(Main.java:1434)
Caused by: java.lang.IllegalAccessException: Class 'org.eclipse.jdt.internal.ui.preferences.cleanup.CleanUpTabPage' no access to: class '[Lorg.eclipse.jdt.internal.ui.preferences.formatter.ModifyDialogTabPage$CheckboxPreference;'
at java.base/java.lang.invoke.MethodHandles$Lookup.checkClassAccess(MethodHandles.java:588)
at java.base/java.lang.invoke.MethodHandles$Lookup.accessCheckArgRetTypes(MethodHandles.java:944)
at java.base/java.lang.invoke.MethodHandleResolver.resolveInvokeDynamic(MethodHandleResolver.java:206)
... 58 more
The text was updated successfully, but these errors were encountered:
It seems unlikely. The test causes an IllegalAccessError and looks for a specific error message and didn't find it because the word "module" was repeated twice.
I was thinking it's a duplicate of #12285 (which is fixed in the build you tried) but the change which introduced that isn't in openj9-0.25.0.
If it goes according to schedule, the next release will be completed by the end of this week.
Java -version output
Summary of problem
In the Eclipse Java IDE I'm facing a
java.lang.IllegalAccessError
if and only if running Eclipse with the AdoptOpenJDK OpenJ9 Java 16 VM. This did not happen before with an Openj9 Java 15 VM and cannot be reproduced with the current AdoptOpenJDK HotSpot Java 16 VM.It can be reproduced with Eclipse SDK 4.19 on Windows 10 and on Linux by trying to open the Clean Ups profile dialog: in Window > Preferences: Java > Code Style > Clean Up hitting the Edit... button.
See Eclipse bug 572093
It might be related to using
java.util.Observable
in OSGi.Diagnostic files
Stack trace:
The text was updated successfully, but these errors were encountered: