I wanted to try some of the features provided by the java SE 9 (Module System Quick-Start Guide) http://openjdk.java.net/projects/jigsaw/quick-start, when I try to download Java SE 9 jdk I get this statement "Java SE 9 has reached end of support. Users of Java SE 9 should switch to Java SE 10" why is that so, and should I step away from java 9? can someone give me a technical explanation. Thanks
-
5The message itself says why, doesn't it? "Java SE 9 has reached end of support."T.J. Crowder– T.J. Crowder2018-07-16 13:48:36 +00:00Commented Jul 16, 2018 at 13:48
-
1We are experiencing some bugs in Java 9 that seem to be fixed in Java 10. If you don’t experience the same, it probably isn’t a valid argument for you, though.Anonymous– Anonymous2018-07-16 13:50:00 +00:00Commented Jul 16, 2018 at 13:50
-
1Oracle changed the release cycle for Java. Now there is a new version of Java every 6 month. See oracle.com/technetwork/java/javase/eol-135779.html.Ralf Renz– Ralf Renz2018-07-16 13:52:02 +00:00Commented Jul 16, 2018 at 13:52
-
3@OleV.V. They don't experience those bugs yet...Michael– Michael2018-07-16 13:52:58 +00:00Commented Jul 16, 2018 at 13:52
-
2That one is easy, @nullpointer, because Java 11 is only out in “early access” yet (where I work we are already trying it out and preparing).Anonymous– Anonymous2018-07-16 17:36:35 +00:00Commented Jul 16, 2018 at 17:36
3 Answers
For starters, Java 9 is no longer getting patched and there's at least one significant bug which will never be fixed. The new Java release cycle means that long-term support will not be given to every release. If you want a stable platform, you must either migrate to Java 10, and then to Java 11 when it's available (which will receive long-term support), or remain on Java 8.
Also var is cool.
Comments
Because the "service" model for Java has changed significantly (see the Oracle guidance document for example).
There are specific "long term services" releases (the first one will be Java 11).
All other releases are only supported for a limited amount of time (think: the release of the next Java version, plus some courtesy time).
Of course, that is (kind of) the "production environment" answer. When doing a bit of Java development on the side, there is no pressing reason to move on. On the other hand, when you are using some JDK for "education purposes", then you should simply go forward with each new Java version, simply to be able to learn what "latest greatest" Java has to offer.
Comments
why is that so, and should I step away from java 9? can someone give me a technical explanation.
The technical reason for the advice is that since it has been EOL'd Java 9 will not receive any more bug fixes or security patches. (Unless you are prepared to pay for a commercial support contract.) See the Oracle Java SE Support Roadmap.
It is up to you to decide whether that is relevant. (It will depend on whether you will be affected by un-fixed bugs ... and that is hard to predict. But you could track the release notes for the Java 10.0.x releases as the come out to see what fixes you may be missing.)