Archive

Archive for the ‘JDK 11’ Category

Time to move Java 8 to Java 11

java_8_11

Java SE 8 is going through the End of Public Updates process for legacy releases.  Oracle will continue to provide free public updates and auto updates of Java SE 8, until at least the end of December 2020 for Personal Users, and January 2019 for Commercial Users.

Oracle Java SE Support Road-map

Release GA Date Premier Support Until** Extended Support Until** Sustaining Support*
11 (LTS) September 2018 September 2023 September 2026 Indefinite

12 (non‑LTS) March 2019*** September 2019 Not Available Indefinite

It also worth to say that Oracle JDK released for public use will be compiled against OpenJDK source code without changes.

After the release of Java 9, 10 and upcoming release of Java 11, there is a lot of open questions on how to migrate applications to use the module system.

Why upgrade from JDK 8 to JDK 11?

  • Next LTS version (if you own a commercial license).
  • Full support for Linux containers (Docker included).
  • Support parallel full garbage collection on G1.
  • Free Application Class-Data Sharing feature.
  • Free low overhead Flight Recorder and Heap Profiler.
  • Heap allocation on alternative memory devices.
  • New default set of root authority certificates.
  • New garbage collectors added ( ZGC & Epsilon).
  • Ahead-of-time compilation and GraalVM.
  • Transport Layer Security (TLS) 1.3.
  • JShell.
  • Support for “shebang” Java files! #!/bin/java
  • Local variable type inference (var keyword).
  • New native unmodifiable collections APIs.
  • New reactive streams APIs.
  • Improved streams/predicate/optional APIs.
  • Improved system process API.
  • Improved files API.
  • Support for HTTP/2.
  • Standard Java Async HTTP client.
  • Multi-release JARs.

Sample Code (spring-petclinic) : https://github.com/panga/spring-petclinic/tree/jdk11

 

Categories: Java, JDK 11, Spring