Modify ↓
#20628 closed defect (worksforme)
InaccessibleObjectException: Unable to make field private java.awt.Image javax.swing.text.html.ImageView.image accessible
Reported by: | simon04 | Owned by: | simon04 |
---|---|---|---|
Priority: | normal | Milestone: | |
Component: | Core | Version: | |
Keywords: | template_report macos java16 | Cc: |
Description
What steps will reproduce the problem?
- Press F1 to open internal help browser
What is the expected result?
No exception
What happens instead?
Exception
Please provide any additional information below. Attach a screenshot if possible.
Probably caused by JEP 396: Strongly Encapsulate JDK Internals by Default.
Revision:17592 Is-Local-Build:true Build-Date:2021-03-19 20:36:11 Identification: JOSM/1.5 (17592 SVN en) Mac OS X 10.16 OS Build number: macOS 11.2.3 (20D91) Memory Usage: 214 MB / 2048 MB (82 MB allocated, but free) Java version: 16+36, AdoptOpenJDK, OpenJDK 64-Bit Server VM Look and Feel: com.apple.laf.AquaLookAndFeel Screen: Display 1 1440×900 (scaling 2,00×2,00) Display 2 3008×1692 (scaling 2,00×2,00) Maximum Screen Size: 3008×1692 Best cursor sizes: 16×16→16×16, 32×32→32×32 VM arguments: [-javaagent:/Applications/IntelliJ IDEA.app/Contents/lib/idea_rt.jar=54741:/Applications/IntelliJ IDEA.app/Contents/bin, -Dfile.encoding=UTF-8] Dataset consistency test: No problems found Last errors/warnings: - 00004,516 W: Failed to register with OSX: java.lang.IllegalAccessException: class org.openstreetmap.josm.tools.PlatformHookOsx cannot access class com.apple.eawt.Application (in module java.desktop) because module java.desktop does not export com.apple.eawt to unnamed module @45099dd3 - 00027,287 E: Handled by bug report queue: java.lang.reflect.InaccessibleObjectException: Unable to make field private java.awt.Image javax.swing.text.html.ImageView.image accessible: module java.desktop does not "opens javax.swing.text.html" to unnamed module @45099dd3 === REPORTED CRASH DATA === BugReportExceptionHandler#handleException: No data collected. Warning issued by: BugReportExceptionHandler#handleException === STACK TRACE === Thread: AWT-EventQueue-0 (25) of main java.lang.reflect.InaccessibleObjectException: Unable to make field private java.awt.Image javax.swing.text.html.ImageView.image accessible: module java.desktop does not "opens javax.swing.text.html" to unnamed module @45099dd3 at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:357) at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) at java.base/java.lang.reflect.Field.checkCanSetAccessible(Field.java:177) at java.base/java.lang.reflect.Field.setAccessible(Field.java:171) at org.openstreetmap.josm.tools.ReflectionUtils.lambda$setObjectsAccessible$0(ReflectionUtils.java:32) at java.base/java.security.AccessController.doPrivileged(AccessController.java:312) at org.openstreetmap.josm.tools.ReflectionUtils.setObjectsAccessible(ReflectionUtils.java:29) at org.openstreetmap.josm.gui.widgets.JosmImageView.<init>(JosmImageView.java:50) at org.openstreetmap.josm.gui.widgets.JosmHTMLFactory.create(JosmHTMLFactory.java:29) at java.desktop/javax.swing.text.CompositeView.loadChildren(CompositeView.java:112) at java.desktop/javax.swing.text.FlowView$LogicalView.loadChildren(FlowView.java:722) at java.desktop/javax.swing.text.CompositeView.setParent(CompositeView.java:139) at java.desktop/javax.swing.text.FlowView.loadChildren(FlowView.java:147) at java.desktop/javax.swing.text.CompositeView.setParent(CompositeView.java:139) at java.desktop/javax.swing.text.FlowView.setParent(FlowView.java:297) at java.desktop/javax.swing.text.html.ParagraphView.setParent(ParagraphView.java:75) at java.desktop/javax.swing.text.CompositeView.replace(CompositeView.java:219) at java.desktop/javax.swing.text.BoxView.replace(BoxView.java:182) at java.desktop/javax.swing.text.CompositeView.loadChildren(CompositeView.java:114) at java.desktop/javax.swing.text.CompositeView.setParent(CompositeView.java:139) at java.desktop/javax.swing.text.html.BlockView.setParent(BlockView.java:72) at java.desktop/javax.swing.text.CompositeView.replace(CompositeView.java:219) at java.desktop/javax.swing.text.BoxView.replace(BoxView.java:182) at java.desktop/javax.swing.text.CompositeView.loadChildren(CompositeView.java:114) at java.desktop/javax.swing.text.CompositeView.setParent(CompositeView.java:139) at java.desktop/javax.swing.text.html.BlockView.setParent(BlockView.java:72) at java.desktop/javax.swing.text.CompositeView.replace(CompositeView.java:219) at java.desktop/javax.swing.text.BoxView.replace(BoxView.java:182) at java.desktop/javax.swing.text.CompositeView.loadChildren(CompositeView.java:114) at java.desktop/javax.swing.text.CompositeView.setParent(CompositeView.java:139) at java.desktop/javax.swing.text.html.BlockView.setParent(BlockView.java:72) at java.desktop/javax.swing.text.html.HTMLEditorKit$HTMLFactory$BodyBlockView.setParent(HTMLEditorKit.java:1470) at java.desktop/javax.swing.text.CompositeView.replace(CompositeView.java:219) at java.desktop/javax.swing.text.BoxView.replace(BoxView.java:182) at java.desktop/javax.swing.text.CompositeView.loadChildren(CompositeView.java:114) at java.desktop/javax.swing.text.CompositeView.setParent(CompositeView.java:139) at java.desktop/javax.swing.text.html.BlockView.setParent(BlockView.java:72) at java.desktop/javax.swing.plaf.basic.BasicTextUI$RootView.setView(BasicTextUI.java:1434) at java.desktop/javax.swing.plaf.basic.BasicTextUI.setView(BasicTextUI.java:715) at java.desktop/javax.swing.plaf.basic.BasicTextUI.modelChanged(BasicTextUI.java:704) at java.desktop/javax.swing.plaf.basic.BasicTextUI$UpdateHandler.propertyChange(BasicTextUI.java:1900) at java.desktop/java.beans.PropertyChangeSupport.fire(PropertyChangeSupport.java:342) at java.desktop/java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:334) at java.desktop/java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:267) at java.desktop/java.awt.Component.firePropertyChange(Component.java:8713) at java.desktop/javax.swing.text.JTextComponent.setDocument(JTextComponent.java:456) at org.openstreetmap.josm.gui.help.HelpBrowser.loadTopic(HelpBrowser.java:236) at org.openstreetmap.josm.gui.help.HelpBrowser.loadRelativeHelpTopic(HelpBrowser.java:332) at org.openstreetmap.josm.gui.help.HelpBrowser.openHelpTopic(HelpBrowser.java:411) at org.openstreetmap.josm.gui.help.HelpBrowser.lambda$setUrlForHelpTopic$1(HelpBrowser.java:116) at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:316) at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:770) at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721) at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715) at java.base/java.security.AccessController.doPrivileged(AccessController.java:391) at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85) at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:740) at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203) at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124) at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113) at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109) at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
Attachments (0)
Change History (4)
comment:1 by , 4 years ago
Owner: | changed from | to
---|---|
Status: | new → needinfo |
comment:2 by , 4 years ago
Resolution: | → worksforme |
---|---|
Status: | needinfo → closed |
Thanks. Adding --add-opens=java.desktop/javax.swing.text.html=ALL-UNNAMED
does the trick for this specific exception.
Note:
See TracTickets
for help on using tickets.
I have added the required --add-opens directives to the macOS build in r17546. If you run JOSM from IntelliJ you need those as well. Can you please check?