Hacker News new | past | comments | ask | show | jobs | submit login

IMHO this mess will hurt Java on the medium-long run.

All of this is unnecessarily complicated and confusing, as a developer it really feels like they don't want me to use Java.

I have the feeling that, similarly to what happened with the Roman empire, greed, laziness and burocracy are going to drag everything down.




How is it a mess?

You have official Oracle JDK build.

You have official Oracle OpenJDK build.

You have plenty of alternative builds.

It's like kernel.org Linux, Debian Linux, Fedora Linux and so on. Does it hurt Linux? I don't think so.

All builds should be perfectly compatible between each other.

Simplest way is just use Oracle JDK 17. It's LTS, free and official.


It's a mess because for the average joe such as myself it's very confusing and foggy.

There's an Oracle jdk whose usage terms need to be deciphered using a lawyer to understand precisely when and how you can use it. So much that the average advice is to not use it. Like if they told you "hey, node.js is cool but don't use the one from those who maintain and develop the code". This would be a huge red flag for any other language than Java, which can leverage 30 years of sunk costs for companies that now will not switch lightly to something else.

The alternative builds are good, yet not official and they might introduce thin incompatibilities or different behaviors. They should not but this whole article suggests that they actually do.

The simple existence of articles like this one testifies that this is a mess for a lot of people.


If you're on linux, use the openjdk build from your distro's official repository. If you're on windows, download the latest openjdk build from oracle (currently https://jdk.java.net/17/), extract somewhere, put /bin folder on path. Optionally set JAVA_HOME env variable to the main folder path. No clue about OSX but it's probably similar to windows.

Ignore oracle jdk, ignore any concept of LTS/not-LTS, that's only for companies with big pockets and specific needs.

People really like to make it sound more complicated than it actually is.


I largely agree, but would only say -- consider if your use-case needs LTS[1]. Not every use-case does.

[1] https://news.ycombinator.com/item?id=26478175




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

Search: