-
Bug
-
Resolution: Unresolved
-
P4
-
jfx20
There are two modes of building JavaFX depending on whether you are building using a boot JDK with or without javafx.* modules.
1. Boot JDK does not have javafx.* modules
This is the mode used to build the JavaFX standalone sdk and jmods. Building the sdk requires a boot JDK without the javafx.* modules.
2. Boot JDK includes the javafx.* modules
This is a mostly legacy mode, but some vendors still use this to generate a set of modules in a form that can be imported into a custom JDK build to include them into that newly built JDK. In this mode, no standalone SDK is built, so it is not generally suitable for use.
There is logic in build.gradle that sets a HAS_JAVAFX_MODULES flag if the boot JDK has javafx.* modules. In this mode, it necessarily builds using the "--upgrade-module-path" option, so that we can test and run using the newly build JavaFX modules prior to including them in a new JDK. The "--upgrade-module-path" option is incompatible with the "--release" option that was added in JavaFX 20 as a more reliable way to indicate the minimum JDK version that we are targeting.
In addition to any fix we might make to allow the "HAS_JAVAFX_MODULES" mode to work, we might want to print a clear warning that we are using this mode, and won't produce a standalone SDK.
1. Boot JDK does not have javafx.* modules
This is the mode used to build the JavaFX standalone sdk and jmods. Building the sdk requires a boot JDK without the javafx.* modules.
2. Boot JDK includes the javafx.* modules
This is a mostly legacy mode, but some vendors still use this to generate a set of modules in a form that can be imported into a custom JDK build to include them into that newly built JDK. In this mode, no standalone SDK is built, so it is not generally suitable for use.
There is logic in build.gradle that sets a HAS_JAVAFX_MODULES flag if the boot JDK has javafx.* modules. In this mode, it necessarily builds using the "--upgrade-module-path" option, so that we can test and run using the newly build JavaFX modules prior to including them in a new JDK. The "--upgrade-module-path" option is incompatible with the "--release" option that was added in JavaFX 20 as a more reliable way to indicate the minimum JDK version that we are targeting.
In addition to any fix we might make to allow the "HAS_JAVAFX_MODULES" mode to work, we might want to print a clear warning that we are using this mode, and won't produce a standalone SDK.
- blocks
-
JDK-8344728 ☂ Gradle build modernization
- Open