Modify

Opened 6 years ago

Closed 6 years ago

Last modified 6 years ago

#16682 closed enhancement (fixed)

New plugin features to support JavaFX 11

Reported by: Don-vip Owned by: team
Priority: normal Milestone: 18.09
Component: Core Version:
Keywords: plugin javafx java11 Cc: stoecker

Description (last modified by Don-vip)

With the removal of JavaFX in Java 11 (#16047), the following features won't work anymore by default:

  • core: MP3 support
  • plugin StreetSide
  • plugin matsim

I don't want to include openjfx directly in JOSM core just for MP3 support. A better way could be to include it in a plugin on which streetside and matsim plugin can depend.

Problems to resolve:

  • JavaFX is based on native libraries, the plugin must install only those for the current platform. If I remember correctly the JOGL plugin does already something like this.
  • the plugin classes will have to be made available to JOSM core classloader for MP3 support => a new plugin property must be added for this (Core-Export?) => The package org.openstreetmap.josm.io.audio.fx will have to move to this new plugin
  • the plugin will include OpenJFX 11. As we still need to support Java 8, the plugin must not be loaded on Java <= 10, for compatibility reasons => a new plugin property must be added for this (Minimum-Java-Version?)

Attachments (0)

Change History (14)

comment:1 by stoecker, 6 years ago

the plugin classes will have to be made available to JOSM core classloader for MP3 support => a new plugin property must be added for this (Core-Export?)

Why can't the plugin provide the related functionality instead of providing required base classes (like the input file support)? That approach sounds strange.

comment:2 by stoecker, 6 years ago

Description: modified (diff)

Change proposed name

in reply to:  1 comment:3 by Don-vip, 6 years ago

Replying to stoecker:

the plugin classes will have to be made available to JOSM core classloader for MP3 support => a new plugin property must be added for this (Core-Export?)

Why can't the plugin provide the related functionality instead of providing required base classes (like the input file support)? That approach sounds strange.

Yes, it's a simpler, safer and more elegant solution. Thanks.

comment:4 by Don-vip, 6 years ago

Description: modified (diff)

comment:5 by Don-vip, 6 years ago

In 14183/josm:

see #16682 - deprecate JavaFX core media player to move it to new openjfx plugin

comment:6 by Don-vip, 6 years ago

In 14186/josm:

see #16682 - add new plugin property Minimum-Java-Version

comment:7 by Don-vip, 6 years ago

In 14234/josm:

see #16047, see #16682 - make PluginClassLoader extend DynamicURLClassLoader so that plugins can add URLs to it

comment:8 by Don-vip, 6 years ago

Resolution: fixed
Status: newclosed

openjfx plugin released in [o34624]. Needs JOSM r14234. This is the biggest JOSM plugin ever made (85 Mb!)

comment:10 by Don-vip, 6 years ago

In 14239/josm:

see #16682 - On Java 9/10 and headless mode, filter plugins requiring JavaFX as Monocle is not available

comment:11 by Don-vip, 6 years ago

In 14242/josm:

see #16047, see #16682 - update animal-sniffer-ant-tasks to 1.18-SNAPSHOT + patches to include ASM 6.2.1 for Java 11 compatibility:

comment:12 by Don-vip, 6 years ago

In 14244/josm:

see #11924, see #15560, see #16047, see #16682 - fixes to make work proguard (OK) and animal_sniffer (still KO) with Java 9+

comment:13 by Don-vip, 6 years ago

In 14245/josm:

see #11924, see #15560, see #16047, see #16682 - fixes to make work animal_sniffer (OK) with Java 9+

comment:14 by Don-vip, 6 years ago

Follow-up: #16912

Modify Ticket

Change Properties
Set your email in Preferences
Action
as closed The owner will remain team.
as The resolution will be set.
The resolution will be deleted. Next status will be 'reopened'.

Add Comment


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