orangeitems’s diary

クラウドではたらくエンジニアの日々の感想です。

2018年4月現在のJavaサポート状況をまとめる

f:id:orangeitems:20180322172427j:plain

※注 (2018/4/24) 本文書は2018年3月22日に作成しましたが、4月になっても状況に変化がないことから、2018年4月現在とします。

 

現在の状況

2018年2月8日に、Java SEのサポート状況に激震が走っていることを記事にしました。

2018年にJavaを利用している人は全員理解すべきことを説明してみる(追記あり) - orangeitems’s diary

 その後いろいろ私の方でも情報を集めているのですが実際何も変わっていません。何か安心できるような材料が出てきたかというと、全く出てきていないというのが正直なところです。

 

[1] OpenJDKのLTS版の情報

OpenJDK11についてはLTS版(long term support)としてリリースされるのではという噂がありましたが、どこからも確たる情報はありません。もはや言葉遊びですが、Oracle JDK 11がリリースされるときにはOpenJDK 11も同時にリリースされます。Oracle JDK 11はこのときは有償サポートがないと手に入りません。有償サポートのなかで更新版が出続けるなら、OpenJDK11も更新されるんじゃないか?、というのは期待であって、これを裏付ける情報は現時点ではありません。

ただ、わざわざOracle JDKとして商業版のみにLTSを提供すると表明しながら、一方で全く同じものをOpenJDKとして無償ダウンロードできるというのは考えにくいのではないかと個人的には思います。11がリリースされるのは2018年9月です。この時点までは何らかの見解がOpenJDKコミュニティーから発表されると思います。

→(最新情報)現時点でどうなるかわからない。2018年9月までOpenJDKの見解を待つしかない。

スポンサーリンク

 

[2] Red Hat社の情報

Red Hat社が、RedHat Linux Enterprize LinuxにバンドルされているOpenJDKは、OSをサポートしている限りサポートしてくれるだろうという目論見の方もいらっしゃると思います。

Red Hat社のOpenJDKのサポートポリシーは以下にあります。

OpenJDK ライフサイクルおよびサポートポリシー - Red Hat Customer Portal

この通り、2020年10月までOpenJDK8を使い続けることまでしかわかりません。9以降は言及すらされていません。

なお、Red Hat社のアプリケーションサーバーであるJBoss EAPにおいては、Java 9/10はどうなるかという見解が出ています。

Support for Java 9 / Java 10 with JBoss EAP. - Red Hat Customer Portal

Java 9については、2018/3(つまり今月)にサポートが切れるのでもうサポートしない書いてあります。また、やはりサポートスキームの変更をRed Hat社も同じように評価中で、Java 10/11が出てみないと何とも言えないという状況です。

 

→(最新情報)現時点でどうなるかわからない。今のところJDK 8を使い続けるのが安全。様子見。

 

[3] JDK8からJDK11への乗り換え期間がタイトすぎる

おそらく海外でも同じ状況だろうと思いまして、開発者の掲示板をのぞいてみたら非常に興味深い議論がありました。

JDK 10: General Availability | Hacker News

> Java8 won't be supported after January 2019, Java11 (LTS) will be release in September this year.
Are they dropping support for the latest LTS just four month after releasing a new LTS? That sounds a bit harsh. 

つまり、Java8(LTS)は2019年1月にサポートを切る、新しいLTSであるJava11は2018年9月リリース。ということは、「4か月しかサポートが重複している期間がない。これはひどいね。」と言っています。

確かに、世の中でたくさん動いているJDK8のアプリがあるとして、JDK9に乗せ換える期間は4カ月しか用意されていないということになります。

合わせてこれで気が付いたのですが、Java 10のリリースは2018/3/20でした。

Oracle、「Java SE 10」を公開。6カ月サイクルでリリースされる最初のバージョン - 窓の杜

そして、Java 9のサポートは2018/3/31で切れます。

ということは、11日間しかJava 9 -> Java 10のサポート重複期間はないですね。Java 9や10など、非LTSバージョンでアプリケーションを構築してしまうと、2週間弱で次のジョンに乗せ換えなければいけないということを示しています。

Oracle Java SE サポート・ロードマップ

もし有償のOracle JDKのPremir Supportに入れれば、Java 8は2022年3月まで延命できますので、これをOracleは狙っているのかもしれません。

何しろ、世界中でこの議論は起こっているということです。

 

→(最新情報)乗せ換えの期間が限られ過ぎている。非LTSだと11日間。LTSでも4カ月間

 

まとめ

OpenJDKを選んでもLTSがどうなるか不明であること。Red Hat社は様子見であること。また、乗せ換える時間が非常に限られること、が分かっていただけたのではないかと思います。

Oracleのサポートにお金を支払っていけるならば何の不安もないと思いますが、OpenJDKを選択することを決めたとたんに大変不安な状況です。

一か月に一度、状況の確認を行っていきたいと思います。カテゴリも「Java」を作りました。ご参考まで。

 

 

スポンサーリンク