Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

There was a deliberate decision, not a random mistake: https://askubuntu.com/questions/1037646/why-is-openjdk-10-pa...

TLDR: Ubuntu Bionic came out before Java 11 was officially released, they did not want to have Java 8 as their default, but Java 10 would not fit their LTS strategy since it is not itself an LTS release.

Having Java 10 in a package that claims to be Java 11 was a stopgap measure, and it has been fixed now, i.e. if you update that package you now get Java 11.



Unfortunately by doing this they made another mess.

When they updated OpenJDK to 11 [1] they didn't realize that some things have been dropped from the core project, and others have moved; as a result (among other things) JavaFX is now broken in Ubuntu Bionic. [2]

I think this is something inexcusable for an LTS.

[1] https://blog.ubuntu.com/2019/04/19/announcing-openjdk-11-pac...

[2] https://bugs.launchpad.net/ubuntu/+source/openjfx/+bug/18250...


TLDR; I agree, but I understand how this happened.

The logic seems to have been:

* Ubuntu 18.04 is a LTS release.

* LTS releases should only incorporate software that is supported on a similar lifecycle.

* OpenJDK 8 was moving out of its support window early in the lifetime of Ubuntu 18.04.

* OpenJDK 11 (the next long term supported JDK) was not going to be released until after the release of Ubuntu 18.04

* OpenJDK 9 and 10 were short term releases so they weren't options

* The move from Open JDK 8 to Open JDK 9 included a lot of breaking changes (from project Jigsaw/modularisation)

So a compromise was necessary. From a purist packaging point of view it makes sense; release JDK 10 as "JDK 11" and silently upgrade under the covers when possible. In theory this would only involve minor changes and the 'wrong' version would only be there for the first few weeks of the release. In practice there were some breaking changes - enough that the backporting of OpenJDK 11 into Ubuntu 18.04 actually took rather a long time. It's also, of course, really confusing when you "sudo apt install openjdk-11" and something totally different happens.

The problem with staying on OpenJDK 8 (perhaps the obvious approach) is that in an unsupported state it would lack security fixes. In practice of course several alternative upstreams are now available supporting it.

Hopefully it will all go with fewer surprises when we get to the next LTS edition (Ubuntu 20.4).


I saw earlier in this thread of blaming Debian, but all I'm seeing is Ubuntu snafus


I can understand their reasons, but they effectively LIED to the users, creating problems and headaches to them.

It’s a ends justified the means situation and they got it terribly wrong.


> There was a deliberate decision, not a random mistake

Debian's mess was not a random mistake. "Whoopsie, I somehow deleted the EA tag from the version string - actually it must have deleted itself. Anyway, I've started uploading it to the package index, it's too late now."




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: