On Tue, 17 Nov 2020 18:10:13 GMT, Kevin Rushforth <k...@openjdk.org> wrote:

> This fix adds documentation and a warning to clarify that loading the JavaFX 
> modules from the classpath is not a supported configuration. This will not 
> affect deployments that put the JavaFX modular jars on the classpath, but 
> will simply warn that it is an unsupported mode.
> 
> JavaFX is built and distributed as a set of named modules, each in its own 
> modular jar file. This supports running both modular and non-modular 
> applications.
> 
> The JavaFX runtime expects its classes to be loaded from a set of named 
> `javafx.*` modules, and does not support loading those modules from the 
> classpath. The Java launcher will fail to load applications that extend 
> `javafx.application.Application` unless the `javafx.graphics` module is on 
> the module path.
> 
> Applications that do not extend `javafx.application.Application` can be 
> loaded even if the `javafx.*` classes are loaded from the classpath, but this 
> is an unsupported configuration.
> 
> This creates the perception that there is a problem with the standard case of 
> loading a subclass of `javafx.application.Application`, since it fails to 
> load in the case where the JavaFX classes are loaded from the classpath. 
> Further, allowing applications to run in an unsupported mode that likely has 
> bugs creates a maintenance burden. Another problem is that when the JavaFX 
> classes are loaded from the classpath, it breaks encapsulation, since we mo 
> longer get the benefit of the java module system.
> 
> The primary reason given for application deployments loading the javafx 
> modules on the classpath usually boils down to one of tooling support, 
> although both gradle and maven now support modules as do all of the popular 
> IDEs.

This looks good, and I didn't hear objections (on the warning) on this PR nor 
in JBS or the mailinglist, so this is ok to be merged.

-------------

Marked as reviewed by jvos (Reviewer).

PR: https://git.openjdk.java.net/jfx/pull/354

Reply via email to