JDKの長期商用サポート(LTS)の提供ベンダー比較（無償利用についても言及あり）

# この記事内容は古いので、下記リンク先の方の記事をご参照ください。
<2021/1追記>

[OpenJDKと各種JDKディストリビューションの情報源まとめ #minjava](https://qiita.com/yamadamn/items/2dd26a014791b9557199)（@yamadamnさんより）


-----

<以下、記事本文：2018年ごろまでのまとめの参考ということで、残しておきますね>

[免責] 可能な限り正確な情報を掲載するよう努めていますが、誤情報が入り込んだり、情報が古くなったりすることもあります。必ずしも正確性や合法性、安全性を保証するものではございません。（さすがに情報が多くなってきたので、書いておこうと思います。）

(速記1) ちょっと特殊なものとしてSpring Frameworkを提供しているPivotalもAdoptOpenJDKベースのJDKの提供を無償／有償サポートで提供をしていましたので、そちらの情報についても追記をしました（こちらは、まとめて有償サポートの項目の最後に追記としています）。 
(速記2) コメント欄に@witchcraze さん @yamadamn さんから頂いた情報も有用なので併せてご覧ください。

# はじめにの前に
最近[WikipediaのOpenJDK](https://ja.wikipedia.org/wiki/OpenJDK)でもJDKのLTSに関してのまとめが追記された様です。より多角な情報から整理したい方はそちらも併せてご覧ください。

# はじめに
はじめまして、u-tanickです。今のところSIerの中の人として地味に働いてます。

Java 11(LTS)がとうとうリリースされましたね！(最終更新日だと13も出てる)

2017年の9月のJava 9リリース前後から、Javaのリリースサイクルが早くなったり、Java EEがオープンコミュニティに譲渡されたりと、いろいろドタバタし続けていましたが、ひとまず区切りのJava 11が出たということで、自分が見聞きした情報を元に、**Java 11以降のサポート（無償・有償）** についてまとめておきたいと思います。（自分向けの備忘録にもなると思って書いてみたら長い。。。）

極力公式情報など出自のはっきりしたを情報を元にしてはいますが、間違いとかあったらご指摘ください。

あと、「このJDKがいいですよ」という記事ではなく「いろいろありますJDK」という趣旨の記事なのでその点ご了承ください。

あと、こんなダラダラした記事は読む気しないやって方は、2018/10/09のJJUGナイトセミナーでKUBOTA Yuji氏が講演された下記のスライドや2019/5/17に@yamadamnさんがOracle Code Tokyo 2019で講演されたスライドが素晴らしくまとまっているので、そっちを読まれることをお勧めします。

**[Java11:サポートとVM機能編 KUBOTAYuji(@sugarlife)]**
https://www.slideshare.net/YujiKubota/introduction-to-java-11-support-and-jvm-features

**[最適なOpenJDKディストリビューションの選び方 @yamadamn]**
https://www.slideshare.net/TakahiroYamada3/how-to-choose-the-best-openjdk-distribution-201905

こちらのスライドでは、SapMachineやBellSoftといった日本ではまだ(たぶん)馴染みのないJDKディストリビューションについても触れられています。幅広い検討や世界におけるJDKに関する取り組みの全体感を漏れなく把握する際にもよい資料だと考えます。

# Javaの無償/有償についての全体感

Javaが有償になるから使えない、みたいな意見もちらほら聞こえますが、Javaの仕様(JEP)は、今まで通りオープンソースプロジェクトで策定されており、その成果物としての **OpenJDKは、Java11以降でもそれ以前と同じく無償で利用が可能です**。

一時期大騒ぎになったのは、Oracleが提供してきたJDKとそのサポートが(商用に限って)有償になったということからでしょうが、この点については、2019/4/16にまた少し動きがあったので次の節の(★)で軽く述べます。

とはいえ、オープンソースなOpenJDK(くどいな)や、Oracle以外だけど無償で商用サポートを提供するベンダーは今まで通りあるので、短絡的に「Java、タダじゃなくなったってよ。」みたいな極端な流れについては事実を正しく理解して欲しいなと思います。（多くは「タダでサポートが受けられなくなる！けしからん！！セキュリティガー！！」見たいな~~感情論~~危機感からだと思いますが、今のいままでどれほどのシステムが適切にアップデートされ続けているのか。。。ゲフンゲフン）

そんな昨今の混乱期の雰囲気を危惧してか、世界のJavaチャンピオンが共同で「Java is Still Free」というJavaの開発・サポート・リリースに関するまとめを執筆されていますのでぜひご一読ください。

[(英語版)Java is Still Free 2.0.0](https://medium.com/@javachampions/java-is-still-free-2-0-0-6b9aa8d6d244)

最新版 2.0.0 ではAmazon Correttoに関しての追記が入ってます。
(今はまだ英語版のみですが、近日日本語訳も作られるのではという[ウワサ](https://twitter.com/search?q=Java%20is%20Still%20Free%20%E3%80%80%E3%81%98%E3%82%85%E3%81%8F%E3%81%A1%E3%82%87%E3%83%BC&src=typd)もあります）

# 無償で商用利用可能なJava

ひとまず、有償でサポートを提供するベンダー（Oracle, IBM, Red Hat, Azul Systems）の情報は後半にまとめるとして、一番気になっている人が多い **無償で商用利用可能なJava（とそのサポートレベル）** について「マルチプラットフォーム向け」と「パブリッククラウド利用前提」とに分けてまとめてみます。

(★) Java ～7 や Java 8公開当初だと、ここにOracleがどどーんと存在していましたが、先日のOracleの発表により、OTNライセンスがOracleJDK 11だけでなく、**2019/4/16公開のOracleJDK 8u211以降**にも適用されることとなったため、商用利用は基本的に有償（開発や個人利用など[特定用途では無償](https://logico-jp.io/2019/04/25/what-is-a-certain-use-in-oracle-technology-network-license-agreement-for-oracle-java-se/)）が明確となり、**無償で商用利用可能なJava**からは外れることとなりました。（参考記事：https://forest.watch.impress.co.jp/docs/news/1180607.html
）

### ■ **マルチプラットフォーム向け**
| JDKの名称 | 提供元 | サポート期間 | サポート提供 | サポートレベル |
|:-----------|:------------:|:------------:|:------------:|:------------:|
| OpenJDK | Javaコミュニティ ※1 | 半年 | コミュニティ | ベストエフォート |
| AdoptOpenJDK with HotSpot | AdoptOpenJDKプロジェクト ※2 | 4年 | コミュニティ | ベストエフォート |
| AdoptOpenJDK with Eclipse OpenJ9 | AdoptOpenJDKプロジェクト ※2 | 4年 | コミュニティ | ベストエフォート |
| Zulu Community Builds | Azul Systems | 半年※3 | コミュニティ | ベストエフォート |
| Amazon Corretto ※4 | Amazon/AWS | JDK8->2023/6, JDK11->2024/8 | AWS & コミュニティ | ベストエフォート |

### ■ **パブリッククラウド利用前提**
| クラウド | JDKの名称 | 提供元 | サポート期間 | サポート提供 | サポートレベル |
|:-----------|:-----------|:------------:|:------------:|:------------:|:------------:|
|Microsoft Azure / Azure Stack ※5| Zulu | Azul Systems | Zulu Enterpriseに依存 | Azul Systems  | Zulu Enterprise | 
|Amazon Linux 2 (AWS) ※6| OpenJDK | Javaコミュニティ | 2023/06/30 | Javaコミュニティ | ベストエフォート | 

**※1**
提供元（というか仕様の策定・実装）はJavaコミュニティが行いますが、提供バイナリのビルドはコミュニティを支援しているOracleが行うようです（これも従来通り）。

https://jdk.java.net

**※2**
AdoptOpenJDKプロジェクトが提供するJDKは、内蔵するJVMの違いによって次の2種類があります。AdoptOpenJDKを使う際は、どちらの種類を選択するかの検討が必要になります。あとPivotalがこのAdoptOpenJDKをベースにしたJDKを自前のLTS＆有償サポート対象として提供していたりもします。

- AdoptOpenJDK with HotSpot
    - OpenJDK仕様に則ったJVMである **HotSpot** を使用
- AdoptOpenJDK with Eclipse OpenJ9
    - IBMが支援するOSS JVMである **Eclipse OpenJ9** を使用
    - こっちだとIBMの商用サポートを買うこともできる。

https://adoptopenjdk.net/

**※3**
Zulu Community Buildsのサポート期間について、明確な数値で記述された箇所がまだ見つけられていません。
ただし、ダウンロードページの記載に **"Azul recommends always using the latest version of Java available"**とあることや、またリリースノートのJava 9, 10, 11提供状況から、OpenJDKと同じく半年間（正確には次のリリースが出るまで）と判断しそのように記載しました。

- [ダウンロードページ]
  - https://www.azul.com/downloads/zulu
- [リリースノート -> Release Details]
  - https://docs.azul.com/zulu/zulurelnotes/

**※4**
Amazonが2018年11月に発表した、JDK：Amazon Correttoは、AWSが独自に無償の長期サポートを提供するマルチプラットフォーム対応版のOpenJDKです。AWSがセキュリティアップデートを無償で長期にわたって提供するという特徴があります。
また、エンタープライズ利用の実績はこれからではあるものの、AWSの内部で利用されていたJavaをオープン化して提供したものとのことです。
https://www.publickey1.jp/blog/18/awsopenjdkamazon_correttoawsjavajava_82023java_112024lts.html

Amazon Correttoに関する説明および取り扱いの考え方について、非常によいまとめがありましたので。

- [OpenJDK完全互換、Amazon Correttoは信用できるのか]
  - https://www.orangeitems.com/entry/2018/11/15/101955

特に、「個人的な意見」と書かれてはいますが、下記の文章の観点について、よくよく考えて扱うことが大切に思います。
「AWSによるベンダーロックインがJavaというアプリケーションの中核でも進んでしまうことの解釈が問題の焦点だと思います。」

**※5**
Java 11がリリースされた直後の発表で、Microsoft Azure自体にも利用されていることなどから、ZuluをAzure状のVMで利用する場合に対して、無償のLTS（**Zulu Enterprise**と同じ扱い）が提供されることが決まりました。また、Amazonも11/1にOpenJDKのAmazon Linux 2上でのLTの提供を発表しました。

- [Microsoftの発表]
  - https://azure.microsoft.com/en-us/blog/microsoft-and-azul-systems-bring-free-java-lts-support-to-azure/
- [Amazonの発表]
  - https://aws.amazon.com/jp/blogs/news/re-affirming-long-term-support-for-java-in-amazon-linux/

**Zulu Enterprise** については、有償のJavaサポートベンダーの項目をご覧ください。

**※6**
Amazon Linux 2上でのOpenJDKのサポート主体はJavaコミュニティとなりますが、Amazonがコミュニティを支援することにより2023/06/30までのサポートが提供されるようです。


# ここから下は
**商用システムをJavaで開発していて、なんらかの正規の長期サポート（5年以上くらいを想定）が必要** な人向けの選択肢として、**Java(JDK)の長期商用サポートを有償で提供している企業ごとのポリシーなどを整理**した情報になります。

# Javaの有償サポートについて（提供ベンダーごとの整理）

Java, JDKの長期商用サポート（以下LTS：Long Term Support）の提供元として主な選択肢になると思われる、次の4社についてまとめていきます。

- **Oracle**
- **IBM**
- **Red Hat**
- **Azul Systems**

各社が提供するLTSについて、下記の観点で簡単にまとめます。

- **サポート対象**
- **サポート期間**
- **費用**


# 長期商用サポート（LTS）の比較：サマリ
こまごまと説明する前に、ひとまず表形式でJDKの長期サポートの全体感をざっくり整理します。ここはサマリなので、各サポート対象となるJDKやサポート内容の詳細について本編（次節以降）とか、そこの参考URLの先などをお読みください。

| ベンダー | サポート対象JDK | サポート期間 | 費用 ※1 |
|:---------------|:----------------|:----------------|:----------------|
| Oracle | Oracle JDK | 5+3年 | 3,000円/プロセッサー |
| IBM | IBM SDK for Java Technology | ミドルウェア製品に依存 ※2 | 製品のサポート料金に含まれる |
| IBM | AdoptOpenJDK with Eclipse OpenJ9 | 5年 | 54,800円/プロセッサー |
| Red Hat | OpenJDK ※3 | Oracleに準ずる ※4 | RHELのサポート料金に含まれる | 
| AzulSystems | Zulu Enterprise | 8+2年 | $13,200/25システム |
| Pivotal | Pivotal Distribution of OpenJDK | 4年 | ＄25,000/50pods or ＄4,000/cores |

- ※1 この表では、一番基準となる金額のみ記載しています。プロセッサー数などによって金額が変わる場合があります。  
- ※2 IBMの製品購入が前提と考えられている模様。Docker Hubからのみ単独入手も可能です。サポート期間などはベンダーに要確認。  
- ※3 Red Hat Enterprise Linuxの利用が前提となります。  
- ※4 Oracleのサポート期間外でも、Red Hatから独自にセキュリティパッチが提供される可能性があるとのことです。ベンダーに要確認。

各ベンダーがサポートするJDKの説明については、これより下をお読みください。


# Oracle
## サポート対象
Oracleは、次のJDKに対してLTSを提供します。

- **Oracle JDK**

**Oracle JDK** とは、Open JDKの特定のバージョンをOracleがビルドして提供するJDKです。Solaris対応などの独自仕様以外の、基本的な機能レベルでOpenJDKとの互換性があり、相互に差し替えが可能です。
Oracle製のミドルウェア(WebLogic, OracleDB)を利用する場合は、このJDKの利用が前提となります。

> Oracle製のミドルウェアのJava11対応状況については Oracle Open Worldなどのベンダー提供の情報をウォッチしておく必要があります。

Java 11以降、Oracle JDKは、3年ごとの長期サポート版と、半年ごとの短期サポート版がリリースされるようです。
> もともとはOracle JDKとしては長期サポート版のみがリリースされる予定でしたが、Java 11のリリース直前で短期サポート版も提供するように方針が決まったようです。

- 長期サポート版（LTS版）
    - Java 11, Java17, Java 23,...
- 短期サポート版（non-LTS版と呼ばれています）
    - Java 12～16, Java18～22, Java 24～,...

詳しくは、**参考URL：Oracle Java SE サポート・ロードマップ** を参照してください。

実際に商用システムに導入するのは、 **長期サポート版（LTS版）** になると思います。
DLする際などは、バージョンを間違えないように気を付ける必要があります。

**＜重要＞**  
OTNライセンスがOracleJDK 11だけでなく、**2019/4/16公開のOracleJDK 8-u211以降**にも適用されることとなったため、商用利用は有償（個人利用のみ無償）が明確となりました。

**Oracle JDK** は、次のパブリッククラウド上の仮想環境での利用が許可されています。許可されていないパブリッククラウド環境で利用する場合は、商用サポートが受けられないと思われるので、ご注意ください。

- Oracle Cloud
- Amazon EC2 and RDS
- Microsoft Azure

詳しくは、**参考URL：クラウド・コンピューティング環境における Oracle ソフトウェアのライセンス** を参照してください。

## サポート期間
**Oracle JDK** のLTSは、下記2種類のサポート期間の合計となる8年間となります。(※)

- Premier Support　5年
- Extended Support　3年

時系列で表現した図としては、**参考URL：Java SE の新しいリリースモデル：p.17** をご参照ください。
参考URLは、ベンダー毎のまとめ単位で記載しています。

> ※ Oracleの有償サポートには、Sustaining Supportという無期限のサポートもありますが、現実的には期限の決められている上記サポートの期間内にバージョンアップ対応をすることが多いのではと考えたため、ここではあえて外しました。


## 費用
**Oracle JDK** のサポート費用は、**Java SE Subscription**  (2018年6月策定)に従います。**Java SE Subscription** は、サーバーサイドでの利用と、クライアントサイドでの利用で料金テーブルが分かれています。多くのWebシステムやバッチシステムでは、サーバーサイドでの利用の料金テーブルを意識することになると思いますので、ここではサーバーサイドの表のみを記載します。

**サーバーサイドでの利用**
＜料金表＞

| 数 | 単位 | 月額 |
|:-----------|:------------:|:------------:|
| 1-99 | プロセッサー | 3,000円 |
| 100-249 | プロセッサー | 2,850円 |
| 250-490 | プロセッサー | 2,700円 |
| 500-999 | プロセッサー | 2,400円 |
| 1,000-2,999 | プロセッサー | 2,100円 |
| 3,000-9,999 | プロセッサー | 1,800円 |
| 10,000-19,999 | プロセッサー | 1,500円 |
| 20,000+ | 個別問合せ | 個別問合せ |

参考URL：Java有償保守サービス Java SE Subscription（NTTデータ先端技術株式会社）より


## 参考URL
- Java SE の新しいリリースモデル
    - [http://otndnld.oracle.co.jp/ondemand/javaday2018/JSE-3](http://otndnld.oracle.co.jp/ondemand/javaday2018/JSE-3)  

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

- Java有償保守サービス Java SE Subscription（NTTデータ先端技術株式会社）  
    - [http://www.intellilink.co.jp/solutions/oracle/java.html](http://www.intellilink.co.jp/solutions/oracle/java.html)
- クラウド・コンピューティング環境における Oracle ソフトウェアのライセンス
    - [https://www.oracle.com/assets/cloud-lic-170290-ja.pdf](https://www.oracle.com/assets/cloud-lic-170290-ja.pdf)


# IBM
## サポート対象
IBMは、次の2種類のJDKに対してLTSを提供します。

- **IBM SDK for Java Technology**  
- **AdoptOpenJDK with Eclipse OpenJ9**

**IBM SDK for Java Technology** とは、IBMの製品（WebSphere, DB2）に含めて提供されるIBM謹製のJDKです。開発用途は無償で利用可能のようです。

**AdoptOpenJDK with Eclipse OpenJ9** とは、AdoptOpenJDKというオープンソースプロジェクトから提供されるJDKです。これは、OpenJDKのJVMを、IBMが開発してきた技術であるEclipse OpenJ9（現在はこれもオープンソース化された）に差し替えてビルドされたJDKになります。

IBMは、上記2種類のJDKについて、Oracle JDKと同じバージョン（Java 11, Java 17, ...）に対してLTSを提供する方針のようです。

これらのJDKは、サーバーサイドでの利用のみが想定されているため、それ以外の用途（クライアントサイド、組み込み）においては、サポート外となるようです。

> Javaの無償利用の項目にも書いていますが、**AdoptOpenJDK with HotSpot** という、JVMをOpenJDKの本来仕様のままビルドしたJDKも提供されていますが、そちらについては、IBMのLTSは提供されません。

## サポート期間

IBMが提供するLTSの期間は、JDKにより異なります。

**IBM SDK for Java Technology**
IBMの製品（WebSphere, DB2）とセットで利用することがほぼと考えらることから、8年以上のサポートが提供される見込みです。

**AdoptOpenJDK with OpenJ9**
IBM Support for Runtimes という枠で 5年間の商用サポートが提供されます。  

IBMが提供するサポート期間を時系列で表現した図としては、**参考URL：オープンソースで提供される第二のJVM：OpenJ9とIBM Javaについて：p.18** をご参照ください。

> AdoptOpenJDKについては、もともとオープンソースプロジェクトということもあり、コミュニティサポートとして無償で4年間のサポートがあるようです。


## 費用
サポート費用は、2種類のJDKともに同じ料金テーブルが適用されます。

| 年額 | 単位 |
|:------------:|:------------:|
| 54,800円 | プロセッサー数 |

単位のプロセッサー数は、実環境ではCPUのコア数。仮想化環境では、割り当てたCPU数となります。


## 参考URL
- オープンソースで提供される第二のJVM：OpenJ9とIBM Javaについて  
    - [https://www.slideshare.net/takakiyo/jvmopenj9-vmibm-java](https://www.slideshare.net/takakiyo/jvmopenj9-vmibm-java)  

- AdoptOpenJDKのDLページ  
    - [https://adoptopenjdk.net/](https://adoptopenjdk.net/)

- AdoptOpenJDKのサポートのページ  
    - [https://adoptopenjdk.net/support.html](https://adoptopenjdk.net/support.html)


# Red Hat
## サポート対象
Red Hatは、次のJDKに対してLTSを提供します。

- **OpenJDK（ただし、Red Hat Enterprise Linuxでの利用に限る）**

OpenJDK自体は、無償利用可能で、そのサポートは本来はリリース後の半年間のみとされていますが、Red Hatが、Red Hat Enterprise Linux上で動かす場合に限り、OSのサポートの範疇に含めると言っています。

サポート対象となるOpenJDKは、RHELのパッケージとして提供されているものであり、RHEL上でyumを利用してインストールすることになります。

Red HatもIBMと同じく、Oracle JDKと同じバージョン（Java 11, Java 17, ...）に対してLTSを提供する方針のようです。

2018/12/19に、Red HatがWindows OS上であっても、Red Hatのミドルウェア(JBOSSが主な対象になる感じか)を利用する場合に対して、OpenJDKのサポートサブスクリプションを提供する方針を発表しました。

https://www.publickey1.jp/blog/18/red_hatwindowsopenjdklts.html
https://access.redhat.com/articles/1299013


## サポート期間
Red Hatが提供するOpenJDKのLTSは、RHEL自体のサポートサブスクリプションに含まれますが、そのサポート期間については、Oracle社の影響を受け、RHELのサポート期間とは異なる期間が適用されます。
これについては、**参考URL：OpenJDK Life Cycle and Support Policy** をご覧ください。

## 費用
OpenJDKのサポート費用は、RHELのサポート費用に含まれるようです。

## 参考URL
- Red HatのOpenJDKのサポート  
    - [https://nekop.hatenablog.com/entry/2018/09/18/115712](https://nekop.hatenablog.com/entry/2018/09/18/115712)  

- OpenJDK Life Cycle and Support Policy  
    - [https://access.redhat.com/articles/1299013](https://access.redhat.com/articles/1299013)

# Azul Systems
## サポート対象
Azul Systemsは、次のJDKに対してLTSを提供します。

- **Zulu Enterprise**  
- **Zulu Embeded**

**Zulu** とは、Azul Systemsが独自にビルドして提供するOpenJDKです。  
**Zulu Enterprise** とは、Zuluに対して、LTSオプションを付与した名称です。**Zulu** と **Zulu Enterprise** はバイナリとしては同じものになります。  
**Zulu Embeded** とは、Azul Systemsが独自にビルドして提供する組み込み向けのJDKです。

> Zuluは、Microsoft Azureのクラウド基盤で利用されているJDKでもあるようです。

Azul Systemsも他社と同じく、Oracle JDKと同じバージョン（Java 11, Java 17, ...）に対してLTSを提供する方針のようです。

Azul Systemsのエンジニア部隊は、海外のみのため、現時点での問い合わせは英語で行う必要があるようです。
（利用相談などは日本法人で対応されそうです）

> Javaの無償サポートの項目にも書きましたが、Microsoft Azure, Azure Stack上でZuluを利用する場合に限って、Zulu Enterpriseレベルのサポートが無償で提供されるようです。

> Azul Systemsは、Zuluの他に、Zingという低レイテンシ高速処理向けの独自JVMも提供しています。ただし、本投稿では、OpenJDKの近傍製品を整理対象とするため、Zingについては記述していません。


## サポート期間
Azul Systemsが提供するLTSの期間は、下記合計の10年間となります。

- Production Support　8年
- Extended Support　2年

Azul Systemsの独自サポートとしては、LTS以外のバージョンについても、1年ごとにリリースされるもの（Java 13 Java 15, ...）に対して中期サポート（以下、MTS：Middle Tarm Support）を提供する、というものがあります。MTSのサポート種別ごとの期限は下記となります。

- Production Support　次のLTS版リリースの1年半後まで(3年半 or 2年半)
- Extended Support　1年

時系列で表現した図としては、**参考URL：Zulu Enterprise Java Support Options：2枚目の図** をご参照ください。

## 費用
JDKの種類や、サーバーサイド・クライアントサイドで料金テーブルは分かれていないようです。料金テーブルの適用単位は、Javaアプリケーションが稼働しているシステム数となっています。また、サポートレベルによって、StandardとPremiumの2つのテーブルが用意されています。

| 最大システム数 | 年額（Standard Support） | 年額（Premium Support） |
|:-----------|:------------:|:------------:|
| 25 | $13,200 | N/A |
| 100 | $31,600 | $37,900 |
| 1,000 | $94,900 | $113,900 |
| 無制限 | $284,600 | $341,500 |


## 参考URL
- AzulSystemsのサイト（日本向け）  
    - [https://jp.azul.com/products/zulu-and-zulu-enterprise/](https://jp.azul.com/products/zulu-and-zulu-enterprise/)  

- Zulu Enterprise Java Support Options  
    - [https://www.azul.com/products/zulu-and-zulu-enterprise/zulu-enterprise-java-support-options/](https://www.azul.com/products/zulu-and-zulu-enterprise/zulu-enterprise-java-support-options/)


# Pivotal

ちょっと変わり種？として、Spring FrameworkやCloud Foundryを提供しているPivotal(最近VMwareと一緒になりましたね)も、ちょっと前からOpen JDKのディストリビューションの提供を開始していたので、そちらについても追記します。
**有償の商用サポート** のほかに、**無償のLTS版** もあるのですが、あちこちに分散して書くのもそろそろつらくなってきたのでここにまとめて書いてしまいます。

公式サイトなどから情報を集めて記載していますが、詳細などについては直接ベンダーにお問い合わせくださいませ。

こちらのJDKについては比較的新しいSpring / Spring Bootを使っていて、OSやクラウドによるJDKサポートが付いてこない場合に選択肢として検討すればどうだろうか、という言うようなものになっています。

## Pivotalが提供するOpen JDKディストリビューション(無償のLTS版)

Open JDKディストリビューションと書きましたが実態は(ほぼ)AdoptOpenJDKと同じと考えてよさそうです。

まず **無償のLTS版** についての情報を簡単にまとめます。

- 名前：Pivotal Distribution of OpenJDK
  - 説明サイト
      - https://docs.pivotal.io/pivotal-distribution-openjdk/
  - ダウンロードサイト
      - https://network.pivotal.io/products/pivotal-openjdk/
      - ダウンロードサイトに「Pivotal 1.xx.0_._xxx」「AdoptOpenJDK 1.xx.0_xxx」の2種類のリンクがありますが、LTSの対象になるのは **「AdoptOpenJDK 1.xx.0_xxx」** から入手したもののようです。
      - この2つの違いについては※を参照ください。
  - JDKのバイナリレベル
      - AdoptOpenJDKに準拠
  - LTSバージョン
      - AdoptOpenJDKに準拠
  - LTS期間
      - 4年
  - 用途
      - 開発および本番利用
  - LTSの内容
      - LTS期間内のアップデートはAAdoptOpenJDKと同様に無償で提供される

※ 2種類のリンクの概要はこのようになっています。
- Pivotal 1.xx.0_._xxx
  - PCF, PKSなどPivotal(VMware)が提供している商用のCloud Foundry(PCF, 今はPivotal Platformと呼ぶのかな)やBuildpackで利用されているJDKのバイナリ。そのためUbuntu向けのみ提供されている。
- AdoptOpenJDK 1.xx.0_xxx
  - より広範囲なプラットフォーム（Win, Mac, Linux）に対応したバイナリ。こちらがLTSの対象のようです。

## Pivotalが提供するOpen JDKディストリビューションの有償サポート

上記のPivotal提供のJDKを利用している際に、別途有償サポート契約を結ぶことで、より高レベルなサポートを受けることが可能になるようです。

こちらはJDKだけでなく、Spring FrameworkやTomcatといった、Pivotalが提供していたりメンテナンスに関わりが強いOSS製品のサポートが含まれているのが特徴となっています。

- 名前：Pivotal Spring Runtime
  - 説明サイト
      - https://pivotal.io/jp/pivotal-spring-runtime
  - サポート対象
      - Pivotal Distribution of OpenJDK
      - Spring Projects (Spring Framework, Boot, Tomcat, etc..)
          - https://pivotal.io/jp/pivotal-spring-runtime#project
      - Pivotal tc Server
      - Apache Tomcat
  - サポート内容
      - 上記を対象に、24×7 の商用レベルの問い合わせサポート（英語だと思われます）
  - 価格
      - Pods単位
          - $25,000 / 50 pods /year
      - コア単位
          - $4,000 / 8 cores /year

用途としては、かなりピンポイントになるかもしれませんが、こういうのもあるんだなという知見ということで。


# 以下、個人的な感想（超雑記：2019/4/21バージョン）

個人で使う分には、なんでもいいけど、お仕事で使うとなった場合、「長期サポートで塩漬け」「新しいバージョンになるはやで載せ替え」というスタンスによって選択が変わってきますね。

Amazon Correttoがマルチベンダー向けの無償長期サポートありのJavaとして、これまでのOracleの立場にとって代わるかもなーという雰囲気をうけますが、下回りの環境制約により、別のJDKでも十分にサポートが受けられたりしますので、自分のシステムの環境や条件をよく理解して適切な選択をしないですね。

以上、長々とお読みいただきありがとうございます。

# 更新履歴

## 2019/10/06 更新
「はじめにの前に」としてOpenJDKのWikipediaへのリンクを追加しました。

## 2019/10/01 更新
Pivotalが提供している無償LTSと有償サポートについて、追記しました。
そろそろキレイに差し込んで書くのが辛くなってきました。ということでベンダー別有償サポートにPivotalとしてまとめて書くようにしました。

## 2019/04/21 更新
OracleJDK が、2019/4/16リリースの **OracleJDK8 u211以降**に対しても、OracleJDK11と同じくOTNライセンスを適用したことから、実質的にOracleJDKの商用利用は有償というになり、それに合わせて本記事のOracleや無償に関する文面や説明をアップデートしました。

## 2019/04/12 更新
最後の雑記のところ、Correttoを加味した記述に変更してみた。
そろそろ正規利用も出始めるのかなー。

## 2019/03/31 更新
Java is Still Free 2.0.0へのリンクを追記しました。それ以外の記述は変更ありません。

## 2019/01/30 更新
Amazon Correttoについて、非常によいまとめブログを見つけたので、Amazon Correttoの補足（注釈※）にリンクを追記しました。
また、Red Hatが昨年末に発表したWindows OS上でのサポートに関する記事についてのリンクを、Red Hatの項に追記しました。

## 2018/12/16 更新
@yamadamn さんにコメントをいただき、Zulu Community Buildsの追記を行いました。ありがとうございます！

## 2018/12/02 更新
Amazonが発表したマルチプラットフォーム対応の無償LTS付きJDK「Amazon Corretto」の情報を「Javaの無償サポートについて」の表に追記しました。

## 2018/11/07 更新
AmazonがAWS上でのLTSを発表したのでその情報を「Javaの無償サポートについて」の表に追記しました。
(そろそろ別の記事を書こう。。。)

## 2018/10/11 更新
重要ドキュメント「Java is Still Free」へのリンクを無償利用の説明付近に追記しました。日本語訳へのリンクもあります。

## 2018/10/06 更新
ちょっと思うところがあり、 **Javaの無償サポートについて** の記事を最初に書くように変更しました。あと、Oracleの項目にJDK 12以降のバージョンやパブリッククラウド上での利用に関する記述を追記しました（その他こまごま表現を修正なども）。