Java 10 was released on 2018-03-20. It is not an LTS release and will be obsoleted at the release of Java 11 in September 2018.
Schedule:
| 2017/12/14 | Rampdown Phase One | |
| 2018/01/11 | All Tests Run | |
| 2018/01/18 | Rampdown Phase Two | |
| 2018/02/08 | Initial Release Candidate | |
| 2018/02/22 | Final Release Candidate | |
| 2018/03/20 | General Availability |
Changes from Java 9:
- JEP 286: Syntax: added local-variable type inference (
var).- Style guidelines from Project Amber
- FAQ from Project Amber
Optional.getdeprecated in favour ofOptional.orElseThrow- JEP 319: Provide a default set of root Certification Authority (CA) certificates in the JDK. (part of the OpenJDK convergence exercise).
- Version number system changed again.
- JDK-8177290: APIs for creating unmodifiable collections (probably replaces some stuff from Guava).
- JDK-8186535: removed some stuff from
SecurityManager - JDK-8148371: removed
policytool - JDK-8159544: removed things from
com.sun.security.auth - Improved Docker Container Integration probably means that at least some people will want to use Java 10 as an execution environment for the IdP.
- Copy factories for collections, optimising for already-unmodifiable structures. Makes the various "unmodifiable" collection wrappers mostly obsolete.
- Stream collectors for collections.