Modify

Opened 5 years ago

Last modified 5 years ago

#19044 assigned defect

JavaFX calls unknown class

Reported by: taylor.smock Owned by: Don-vip
Priority: normal Milestone:
Component: Plugin javafx Version: tested
Keywords: template_report, javafx, mapillary, openwebstart, java11 Cc: Zian, thomersch

Description (last modified by taylor.smock)

What steps will reproduce the problem?

  1. Install a Mapillary plugin snapshot (I used the version from https://gitlab.com/gokaart/josm-mapillary-plugin/-/jobs/500339283 -- download job artifacts, open zip, go to build/dist and copy the jar file to the JOSM plugins directory)
  2. Install the appropriate javafx plugin (crashes on Windows and Mac, Linux not yet tested)
  3. Restart, if necessary. I've only been able to reproduce using OpenWebStart (I haven't tested IcedTea yet). Calling the .jar file from the CLI with java -jar works (java -version indicates AdoptOpenJDK 11.0.6, in this case).
  4. Download an area
  5. If not already shown, show the Mapillary Filter toggle dialog (it uses JavaFX for date pickers)

What is the expected result?

No crash. :)

What happens instead?

Crash. :(

Please provide any additional information below. Attach a screenshot if possible.

Occurs with 11.0.6 Zulu Community Edition and 11.0.6 AdoptOpenJDK.

Relative:URL: ^/trunk
Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
Last:Changed Date: 2020-04-06 02:17:07 +0200 (Mon, 06 Apr 2020)
Revision:16239
Build-Date:2020-04-06 00:18:43
URL:https://josm.openstreetmap.de/svn/trunk

Identification: JOSM/1.5 (16239 en) Windows 10 64-Bit
OS Build number: Windows 10 Home 1803 (17134)
Memory Usage: 551 MB / 2048 MB (322 MB allocated, but free)
Java version: 11.0.6+10-LTS, Azul Systems, Inc., OpenJDK 64-Bit Server VM
Screen: \Display0 3840x2160, \Display1 3840x2160
Maximum Screen Size: 3840x2160
VM arguments: [-Djava.util.Arrays.useLegacyMergeSort=true, --add-reads=java.base=ALL-UNNAMED,java.desktop, --add-reads=java.desktop=ALL-UNNAMED,java.naming, --add-reads=java.naming=ALL-UNNAMED,java.desktop, --add-exports=java.desktop/sun.awt=ALL-UNNAMED,java.desktop, --add-exports=java.desktop/javax.jnlp=ALL-UNNAMED,java.desktop, --add-exports=java.base/com.sun.net.ssl.internal.ssl=ALL-UNNAMED,java.desktop, --add-exports=java.base/sun.net.www.protocol.jar=ALL-UNNAMED,java.desktop, --add-exports=java.base/sun.security.action=ALL-UNNAMED,java.desktop, --add-exports=java.base/sun.security.provider=ALL-UNNAMED,java.desktop, --add-exports=java.base/sun.security.util=ALL-UNNAMED,java.desktop, --add-exports=java.base/sun.security.validator=ALL-UNNAMED,java.desktop, --add-exports=java.base/sun.security.x509=ALL-UNNAMED,java.desktop, --add-exports=java.base/jdk.internal.util.jar=ALL-UNNAMED,java.desktop, --add-exports=java.base/sun.net.www.protocol.http=ALL-UNNAMED,java.desktop, --add-exports=java.desktop/sun.awt.X11=ALL-UNNAMED,java.desktop, --add-exports=java.desktop/sun.applet=ALL-UNNAMED,java.desktop, --add-exports=java.desktop/sun.applet=ALL-UNNAMED,jdk.jsobject, --add-exports=java.naming/com.sun.jndi.toolkit.url=ALL-UNNAMED,java.desktop]
Dataset consistency test: No problems found

Plugins:
+ Mapillary (1.5.20-83-g53ef3bd)
+ apache-commons (35362)
+ apache-http (35092)
+ javafx-windows (35375)
+ jna (35092)

Last errors/warnings:
- E: Region [TMS_BLOCK_v2] Failure getting from disk, key = OpenStreetMap Carto (Standard):https://{switch:a,b,c}.tile.openstreetmap.org/{zoom}/{x}/{y}.png/15/6501/12515
- E: Region [TMS_BLOCK_v2] Failure getting from disk, key = OpenStreetMap Carto (Standard):https://{switch:a,b,c}.tile.openstreetmap.org/{zoom}/{x}/{y}.png/15/6504/12516
- E: Region [TMS_BLOCK_v2] Failure getting from disk, key = OpenStreetMap Carto (Standard):https://{switch:a,b,c}.tile.openstreetmap.org/{zoom}/{x}/{y}.png/15/6503/12515
- E: Region [TMS_BLOCK_v2] Failure getting from disk, key = OpenStreetMap Carto (Standard):https://{switch:a,b,c}.tile.openstreetmap.org/{zoom}/{x}/{y}.png/15/6501/12514
- E: Handled by bug report queue: java.lang.NoClassDefFoundError: jdk/swing/interop/SwingInterOpUtils. Cause: java.lang.ClassNotFoundException: jdk.swing.interop.SwingInterOpUtils
- E: Handled by bug report queue: java.lang.NoClassDefFoundError: jdk/swing/interop/SwingInterOpUtils
- E: Handled by bug report queue: java.lang.NoClassDefFoundError: jdk/swing/interop/SwingInterOpUtils
- E: Handled by bug report queue: java.lang.NoClassDefFoundError: jdk/swing/interop/SwingInterOpUtils
- E: Handled by bug report queue: java.lang.NoClassDefFoundError: jdk/swing/interop/SwingInterOpUtils
- W: Warning - <html>JOSM could not find information about the following plugins:<ul><li>apache-commons</li><li>Mapillary</li><li>javafx-windows</li><li>jna</li><li>apache-http</li></ul>The plugins are not going to be loaded.</html>


=== REPORTED CRASH DATA ===
BugReportExceptionHandler#handleException:
No data collected.

Warning issued by: BugReportExceptionHandler#handleException

=== STACK TRACE ===
Thread: JavaFX Application Thread (144) of JOSM
java.lang.NoClassDefFoundError: jdk/swing/interop/SwingInterOpUtils
	at com.sun.javafx.embed.swing.newimpl.JFXPanelInteropN.postEvent(JFXPanelInteropN.java:36)
	at javafx.embed.swing.JFXPanel.invokeOnClientEDT(JFXPanel.java:930)
	at javafx.embed.swing.JFXPanel$HostContainer.setEmbeddedScene(JFXPanel.java:972)
	at com.sun.javafx.tk.quantum.EmbeddedScene.setStage(EmbeddedScene.java:122)
	at com.sun.javafx.tk.quantum.GlassStage.setScene(GlassStage.java:94)
	at com.sun.javafx.tk.quantum.EmbeddedStage.setScene(EmbeddedStage.java:62)
	at javafx.stage.Window$12.invalidated(Window.java:1085)
	at javafx.beans.property.BooleanPropertyBase.markInvalid(BooleanPropertyBase.java:110)
	at javafx.beans.property.BooleanPropertyBase.set(BooleanPropertyBase.java:145)
	at javafx.stage.Window.setShowing(Window.java:1174)
	at javafx.stage.Window.show(Window.java:1189)
	at com.sun.javafx.stage.EmbeddedWindow.show(EmbeddedWindow.java:71)
	at javafx.embed.swing.JFXPanel.setSceneImpl(JFXPanel.java:326)
	at javafx.embed.swing.JFXPanel.setScene(JFXPanel.java:296)
	at org.openstreetmap.josm.plugins.javafx.gui.JavaFxWrapper.initFX(JavaFxWrapper.java:71)
	at com.sun.javafx.application.PlatformImpl.lambda$runLater$10(PlatformImpl.java:428)
	at java.base/java.security.AccessController.doPrivileged(Native Method)
	at com.sun.javafx.application.PlatformImpl.lambda$runLater$11(PlatformImpl.java:427)
	at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:96)
	at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
	at com.sun.glass.ui.win.WinApplication.lambda$runLoop$3(WinApplication.java:174)
	at java.base/java.lang.Thread.run(Thread.java:834)
Caused by: java.lang.ClassNotFoundException: jdk.swing.interop.SwingInterOpUtils
	at java.base/java.net.URLClassLoader.findClass(URLClassLoader.java:471)
	at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:588)
	at org.openstreetmap.josm.plugins.PluginClassLoader.loadClass(PluginClassLoader.java:73)
	at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
	... 22 more

See #17858

Attachments (0)

Change History (12)

comment:1 by taylor.smock, 5 years ago

Description: modified (diff)

comment:2 by Don-vip, 5 years ago

Status: newassigned

comment:3 by taylor.smock, 5 years ago

Description: modified (diff)

comment:4 by stoecker, 5 years ago

Ticket #19166 has been marked as a duplicate of this ticket.

comment:5 by taylor.smock, 5 years ago

Ticket #19167 has been marked as a duplicate of this ticket.

comment:6 by Polarbear-j, 5 years ago

Problem with the automatic installation:

When updating to the lastest JOSM, it complained about the missing javafx for mapillary, and I chose "download and restart". However it did not download the plugin, nothing in the log, and after the automatic restart the problem remained. No loading of this plugin during restart.

I went to plugins were java-fx was still unticked, so I added it manually, which succeeded, the log said: "The following plugin has been downloaded <strong>successfully ... javafx-osx (35375)", now restarting: "INFO: loading plugin 'javafx-osx' (version 35375)". First test, mapillary seems to work.

Identification: JOSM/1.5 (16392 en) Mac OS X 10.11.6
OS Build number: Mac OS X 10.11.6 (15G22010)
Memory Usage: 1196 MB / 3641 MB (730 MB allocated, but free)
Java version: 1.8.0_231-b11, Oracle Corporation, Java HotSpot(TM) 64-Bit Server VM

comment:7 by taylor.smock, 5 years ago

@Polarbear-j: I should probably look into adding some kind of dialog for "virtual" plugins (i.e., if only one plugin matches, then offer to install that plugin. Otherwise, have a drop-down dialog to select a plugin.)

I don't know how much work that is going to be, and it would be in JOSM core (so earliest stable would be the June release, assuming I get the time to work on it).

Also, you should have opened a new bug for that, instead of posting in a (largely) unrelated bug.

comment:8 by taylor.smock, 5 years ago

Ticket #19256 has been marked as a duplicate of this ticket.

comment:10 by taylor.smock, 5 years ago

Ticket #19303 has been marked as a duplicate of this ticket.

comment:11 by simon04, 5 years ago

Ticket #19342 has been marked as a duplicate of this ticket.

comment:12 by simon04, 5 years ago

Cc: Zian thomersch added

Modify Ticket

Change Properties
Set your email in Preferences
Action
as assigned The owner will remain Don-vip.
as The resolution will be set. Next status will be 'closed'.
to The owner will be changed from Don-vip to the specified user. Next status will be 'new'.
Next status will be 'needinfo'. The owner will be changed from Don-vip to taylor.smock.
as duplicate The resolution will be set to duplicate. Next status will be 'closed'. The specified ticket will be cross-referenced with this ticket.

Add Comment


E-mail address and name can be saved in the Preferences .
 
Note: See TracTickets for help on using tickets.