[12] RFR: JDK-8209966: Update minimum boot JDK to 11
Ty Young
youngty1997 at gmail.com
Wed Sep 26 06:27:31 UTC 2018
On 9/24/18 2:12 AM, Johan Vos wrote:
>
>
> > And it's only going to get worse as time goes on. Would it not be
> > possible to support up until the last JDK LTS(Starting at 11)
> release
> > for building JavaFX? I feel like maybe that would be more
> reasonable.
>
> This is a good question, and maybe in the future we might not be so
> quick to do this...or maybe we will. We should discuss this
> before we
> get to this point for JavaFX 13, a little less than six months
> from now.
> The choices for the model are:
>
> 1. Allow building JavaFX N with either JDK N-1 or JDK N.
> 2. Allow building JavaFX N with the most recent LTS or later.
>
> Choice #1 will allow JavaFX to better keep pace with JDK features
> (API
> or language features). Choice #2 will allow JavaFX to build and
> run with
> the most current, stable JDK LTS at the cost of not being able to use
> newer JDK features.
>
>
> One of the reasons Java is moving to a fast release cadence is because
> today, this is required to stay relevant in a fast-changing landscape.
> I think we need to do the same with JavaFX. We should be able to
> leverage the latest and greatest advances in the JDK, since this will
> allow JavaFX to move fast as well, which is required to stay relevant.
>
Maybe it's because I don't work for a large corporation, but I don't see
this supposed "fast-changing" landscape. To me, it just looks like Java
is trying to appeal to all the people from Python/C++/other languages
who can't or have a hard time writing object oriented code by
introducing a more lazy "functional" and "concise" way of programming.
The amount of actual meaningful updates to the language in 10 and 11 in
my eyes is fairly small, which is somewhat expected with the faster
release cycles. If there was actually a "fast-changing" landscape, I
would think that there would more meaningful and useful updates rather
than the 50/50 "functional and/or concise"/other misc updates that has
been the case for JDK 10 and 11.
Personally, whatever was updated that resulted in Netbeans properly
using the OS's Look and Feel was the only worthwhile update of the
entire JDK 11 release IMO, but I digress.
To be clear, I'm not that concerned about breaking compatibility with
older versions of the JDK because of API updates/introductions/removals
or new, better tools being introduced. I'm more concerned about
backwards compatibility being broken for stupid reasons like new lazy
language updates that have no actual value or can be done with older
compatible ways just because people want to be lazy, "functional", and
"concise" which has become a bit of a hot trend lately.
> If you want to run on the latest stable JDK LTS, the logical
> consequence seems to me you use the latest stable JavaFX LTS. There is
> LTS support available for both Java and JavaFX 11 and they are pretty
> well aligned.
>
That's all fine and dandy except for the fact that you can't guarantee
what JRE is being run if you haven't moved to Java 9 modules. What do
you do, wait a few months after a new LTS is out and then update your
application with new JDK/JavaFX features and say "tough luck" to anyone
who is still using a previous LTS? What if a user has a newer JRE
installed with a feature that exists on the previous LTS removed but not
their newer JRE that JavaFX LTS depends on?
I've never tried it, but I guess you could prompt the user to download a
compatible JRE via a Swing GUI and use that to launch the application
via a launcher... but that's just awful for so many different reasons.
> Having said that, there is no point in moving forward just for the fun
> of it. We also have to distinguish between changes in the VM or in the
> core Java API's.
> My opinion is that if a new feature is added to JDK N, we can really
> take advantage of it in JavaFX (N+1).
> In some cases, there won't be new features relevant to OpenJFX. But
> even then, I don't think we can't change our rules on a per-release
> case (e.g. JavaFX 14 works with Java 13 and Java 14, and even Java 12;
> but JavaFX 15 works with Java 14 and Java 15 and not with Java 13).
>
> In general, I think developers updating from JavaFX 11-12-13 are also
> capable of updating the JDK from 11-12-13, so I prefer the coupling
>
> 1. Allow building JavaFX N with either JDK N-1 or JDK N.
>
> - Johan
>
More information about the openjfx-dev
mailing list