Oracle’s shift from doing a major release of standard Java every three years to doing releases every six months, a plan announced in September 2017, has resulted in versions with far fewer new capabilities than before. And that are perhaps far less interesting.
, due in September, has just five new features, including a and an . Now in a rampdown phase in its development, JDK 13 follows . JDK 12 had eight new features, including a preview of switch expressions.
Compare JDK 12 and JDK 13 to , which listed roughly 90 new features, chief among them modularity, a REPL, and compiler improvements. Of course, JDK 9 came three-and-a-half years after .
The new release cadence, intended to get features out faster, thus has made Java upgrades less dramatic than they once were. Fewer features gives Java shops more leeway to pass on the latest upgrade and wait for a more monumental release down the road. By the same token, users may not have to wait as long for a specific new feature, with the next release of Java always just around the corner.
With the six-month release cadence, Oracle also introduced a distinction between “non-LTS” feature releases, which receive support only until the next feature release, and “LTS” (long-term support) releases, which arrive every three years and receive extended support. The current LTS release, , arrived September 2018, will be supported until September 2026.
Oracle JDK releases have been turning up every six months since . After JDK 13 ships, JDK 14 is due presumably in March 2020. The does not yet cite any planned features. But based on what we’ve seen in the most-recent releases, developers awaiting JDK 14 should not expect more than a tiny handful of improvements once again.