Java 9のその先へ~JavaOne Conference 2017レポート

第2回 JDKの新しいリリースモデルに要注目 OpenJDKとOracle JDKの違いにも注意が必要[JavaOne 2017]

この記事を読むのに必要な時間:およそ 2 分

Oracle JDKは3年ごとにLTS版をリリース

Oracle JDKについては,18.9以降,3年ごとにLTS版をリリースしていくとのことです。サポート期限は最大で8年間とのことです。

Oracle JDKのサポート・ロードマップについては,下記のページに公式アナウンスが掲載されています。

Oracle Java SEサポート・ロードマップ
http://www.oracle.com/technetwork/jp/java/eol-135779-ja.html

これによると,機能リリースはOpenJDKと同様に6ヵ月ごとのサイクルで,メンテナンスおよびセキュリティアップデートは年4回となっています。

Oracle JDK 9と18.3は短期サポートのみ

non-LTS版のOracle JDKについては,次バージョンのnon-LTS版がリリースされるのと同時にサポートが終了すると明記されています。注意しなければいけないのは,LTS版のOracle JDKの提供は18.9からなので,先日リリースされたJDK 9と,新しいモデルの最初のリリースとなる18.3についてはnon-LTS版だということです。したがって,それぞれのサポート期間は6ヵ月しかありません。

また,non-LTSのOracle JDK 8のサポートも2018年9月までの予定となっているので,それまでに最新バージョンにアップデートするか,Oracleと商用サポート契約を結ぶ必要があります。

Early Access版はサブプロジェクトごとに公開

話をOpenJDKに戻します。OpenJDKプロジェクトでは,従来より正式リリース前の開発バージョンを,試験やフィードバック目的でEarly Access(EA)版として公開してきました。新しいリリースモデルでは,EAビルドの公開は,JDKの機能リリース全体ではなく各サブプロジェクトごととすることを提案しているそうです。

OpenJDKプロジェクトでは,さまざまな新機能を個別のサブプロジェクトとして開発しています。機能リリースでは複数のサブプロジェクトの成果が取り込まれることもあるわけですが,EAの公開は機能リリースとは独立して行おうということです。すなわち,それぞれのEAにはそのプロジェクトで開発中の新機能のみが含まれることになります。

リリースモデルの刷新はJava関係者全員に影響する

今回の発表は,Javaのプロダクトやサービスをを提供しているすべての開発者やプロバイダに影響するものです。OpenJDKはこれまで通り無償で使えますが,短いサイクルで次々と新機能が追加されることになります。6ヵ月を過ぎると次のバージョンがリリースされ,古いバージョンはメンテナンスの対象外になるため,機能を固定した上で使い続けるということが難しくなります。なお,セキュリティパッチの適用については現状ではまだ方針が明らかにされていません。

まだ不確定な要素があるとはいえ,今回の発表はかなり影響範囲の大きなものです。最新の動向に注目した上で,自分のプロダクトのメンテナンスをどうするべきか,方針を検討する必要が出てくるでしょう。

JavaOne 2017
https://www.oracle.com/javaone/

著者プロフィール

杉山貴章(すぎやまたかあき)

有限会社オングス所属。Javaやシェルスクリプトによるソフトウェア開発を手がけるかたわら,プログラミング関連書籍やIT系雑誌記事,ニュース記事などの執筆などを行っている。著書に『正規表現書き方ドリル』(2010年,技術評論社),『図解クラウド 仕事で使える基本の知識』(2011年,技術評論社)などがある。