> This PR bumps the minimum JDK version needed to build and run JavaFX to JDK > 17, starting with JavaFX 20. > > As discussed in [this > thread](https://mail.openjdk.org/pipermail/openjfx-dev/2022-July/034874.html) > on the `openjfx-dev` mailing list, this means that we can start using > language features and APIs available from JDK 12 through 17. However, this is > not an open invitation to globally refactor data classes into records, or > change all multi-line Strings into text blocks. Rather we will be able to > start using recent JDK capabilities in new code where it makes sense to do so. > > The changes are as follows: > > 1. Added a new `jfx.jdk.target.version` property in `build.properties` to > define the minimum JDK version, and set it to 17. > 2. Bumped the minimum version of the boot JDK to 17 and the minimum version > of gradle to 7.3. > 3. Use the recent gradle feature to implement the minimum JDK version using > `--release NN` instead of `-source NN -target NN` where possible (everywhere > except when building the `javafx.swing` module and the system tests). > 4. Update `CONTRIBUTING.md` to say that JDK 17 is the minimum. > > Because this change has behavioral compatibility impact, it will need a CSR > and a release note.
Kevin Rushforth has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains four additional commits since the last revision: - Merge remote-tracking branch 'upstream/master' into 8290530-min-jdk-17 - Explain the commented out 'jdk18OrLater' property - Update min JDK in CONTRIBUTING.md - 8290530: Bump minimum JDK version for JavaFX to JDK 17 ------------- Changes: - all: https://git.openjdk.org/jfx/pull/850/files - new: https://git.openjdk.org/jfx/pull/850/files/4ea79b20..2cbb51e9 Webrevs: - full: https://webrevs.openjdk.org/?repo=jfx&pr=850&range=02 - incr: https://webrevs.openjdk.org/?repo=jfx&pr=850&range=01-02 Stats: 92 lines in 13 files changed: 73 ins; 0 del; 19 mod Patch: https://git.openjdk.org/jfx/pull/850.diff Fetch: git fetch https://git.openjdk.org/jfx pull/850/head:pull/850 PR: https://git.openjdk.org/jfx/pull/850
