Oracleは2018年9月25日(現地日時)、長期サポート版(LTS)となるJava SE 11(JDK11)をリリースしたことを発表した。2014年3月リリースのJava 8から数えると4年半ぶりのLTSとなるJava 11はUnicode 10のサポート(JEP 327)やHTTPクライアント(JEP 321)の標準化、Javaランチャーの拡張によるJavaコードの直接実行(JEP 330)といった新機能が加わっている。

また、新ガベージコレクタとなるZGCの実装(JEP 333)により、ガベージ実行時の停止時間は10ミリ秒以下に抑制し、数百MBから数TBのヒープ処理を可能とした。詳しくはJDK 11のリリースノートをご覧頂きたい。

Java 11のリリースが注目を集める理由の1つが、Java 9で非推奨となったJava EEおよびCORBAモジュールの削除(JEP 320)である。Java 8の開発環境は代替となるライブラリへの書き換えが必要だろう。

更なる理由の1つが、Oracle JDK 8公式アップデート終了だ。これまで無償提供されていたOracle JDKが有償になるため、Java開発者はOracle JDK 8の有償サポート延長や、Oracle JDK 11への有償移行が求められる。なお、OpenJDK 11という選択肢もあるが、6カ月周期の更新計画を求められるため、企業ユーザーには非現実的だろう。

阿久津良和(Cactus)