Contenu connexe
Similaire à JDK: 新しいリリースモデル解説 (20)
JDK: 新しいリリースモデル解説
- 1. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
JJUG ナイトセミナー
「緊急特集! Javaの無償版はなくならないぞ!」
JDK: 新しいリリースモデル解説(修正版) ver. 1.1
2018.6.23 (Sat) ver. 1.1
2018.6.20 (Wed) ver. 1
日本オラクル株式会社
クラウドプラットフォーム戦略統括
ビジネス推進本部
伊藤 敬
@itakash
- 2. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
Safe Harbor Statement
The following is intended to outline our general product direction. It is intended for
information purposes only, and may not be incorporated into any contract. It is not a
commitment to deliver any material, code, or functionality, and should not be relied upon
in making purchasing decisions. The development, release, and timing of any features or
functionality described for Oracle’s products remains at the sole discretion of Oracle.
- 3. Copyright © 2017, Oracle and/or its affiliates. All rights reserved.
はじめに
• 本セッションおよび資料は、JDKの新しいリリースモデルを解説することを目的と
しています。
• 内容は以下の情報に基づいています。
– 「オラクル Java SE サポートロードマップ」
• http://www.oracle.com/technetwork/jp/java/eol-135779-ja.html
– Java Day Tokyo 2018 セッション資料
「JDKの新しいリリースモデル」
• http://otndnld.oracle.co.jp/ondemand/javaday2018/JSE-3
• なお、米国2018/6/22に発表された“Java SE Subscription”の情報は反映しておりません。
Java SE Subscriptionについては米国オラクルWebサイトをご参照ください。
3
- 4. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
従来のJDKリリース:JDK 8までのOracle JDKの作り方
4
• OpenJDKコミュニティが開発
• ソースコードを公開、バイナリ提供なし
• ライセンス:GPL v.2 + Classpath Exception
• JavaFX
• Java Plug-In / Java Web Start
• JFR/JMC
• Auto Version Up (Auto Update)
• Installer
• オラクルが上記を追加してOracle JDKバイナリ生成
• オラクルWebからJDK、JREを提供
• ライセンス:BCL
ライブラリ、コアレベルのツール類は同じ
ソースコード
Oracle JDKバイナリ
- 5. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
アップデートリリースの提供(従来)
5
• Update Projectからアップデートリリースを提供
• Oracle JDKと完全に一致したリリースはしていない
• オラクルがアップデートリリースを開発して提供
• 合わせてJDKのバグフィックスも同梱
• たまに機能追加もしちゃったり
• OpenJDKにも提供
アップデートリリースの同期は不完全
アップデートリリース:
• 脆弱性対策
• バグフィックス
• 新機能(時々)
- 6. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
JDK/JREに対するニーズ
• もっと短期間でバージョンアップしてほしい
• 1バージョンを長期間使いたい
• モダンにしてほしい
– ITトレンドに対応、インフラの進化へ適応
– 言語としての進化
• 安定したリリースを実現してほしい
– JDK 9リリース延期などから
6
- 7. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. 7
これまでのJDKリリースとリリース間隔
3年6ヶ月4年7ヶ月 2年8ヶ月
JDK 8
2014年
3月
JDK 7
2011年
7月
JDK 6
2006年
12月
JDK 9
2017年
9月
- 8. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. | 8
JDK 7 – 9で新規に搭載された機能数
3年6ヶ月4年7ヶ月 2年8ヶ月
JDK 8
2014年
3月
JDK 7
2011年
7月
JDK 6
2006年
12月
JDK 9
2017年
9月
完成している中小の機能はリリース待ち
新バージョンリリース時にまとめて提供
新規搭載された機能数
- 9. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. | 9
もっと早くリリースして欲しい!
1つのバージョンをなるべく長く利用したい!
- 10. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
JDK 9以降のOpenJDKとOracle JDKの作り方
10
• OpenJDKコミュニティが開発
• ソースコードを公開、バイナリ提供なし
• ライセンス:GPL v.2 + Classpath Exception
• オラクルがOpenJDKバイナリを生成し、無償提供
• ライセンス: GPL v.2 + Classpath Exception
• オラクルがバイナリ生成、有償提供
• ライセンス:BCL
• JavaFX (JDK9から非サポート、JDK11から非搭載)
• Java Plug-In / Java Web Start
• Auto Version Up (Auto Update)
• Installer
• JFR/JMC (JDK 11~)
ソースコード
バイナリ
バイナリ
- 11. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
JDK 9以降のOpenJDKとOracle JDK
11
• オラクル提供、無償版のみ
• 6ヶ月単位でリリース
• 開発された新機能を順次利用できる
• オラクルからセキュリティアップデート提供
• OpenJDKコミュニティによる無償サポート
• オラクル提供、有償提供のみ(JDK 11から)
• 3年に一度のリリース
• 長期バージョン固定したいニーズ向け
• セキュリティアップデート提供
• オラクルの有償サポート提供(最低8年:LTS)
バイナリ
バイナリ
- 12. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. 12
OpenJDKバイナリのリリースサイクル
2018年
3月
11
12
13
14
15
16
17
18
19
2017年
9月
2018年
9月
2021年
9月
6ヶ月に一度
機能追加
2019年
9月
2020年
9月
2021年
9月
2019年
3月
2020年
3月
2021年
3月
2022年
3月
9
10
• 6ヶ月単位で新バージョンがリリースされる
• 完成した機能からリリース
• 複数バージョンがオーバーラップして提供されることはなくなる
→ 次バージョン提供開始で前バージョンはEOLとなりArchiveへ移動
新しいサイクル 従来のサイクル
OpenJDK
- 13. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. 13
OpenJDKバイナリのリリースは3月と9月に固定
OpenJDKバイナリのリリースとアップデートリリース
3月
4月 5月 6月 7月 8月
9月
10月 11月 12月1月 2月
Ver
Up
更
新
更
新
更
新
更
新
Ver
Up
更
新
アップデートリリース:
• 脆弱性対策
• バグフィックス
今後のアップデートリリースには
新機能搭載は行わない
- 14. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. 14
2つのJDKバイナリのリリースサイクル
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
9
9
10
10
11 LTS
17 LTS
23 LTS
2017年
9月
2018年
3月
2018年
9月
2019年
3月
2019年
9月
2020年
3月
2020年
9月
2021年
3月
2021年
9月
2022年
3月
2022年
9月
2023年
3月
2023年
9月
2024年
3月
2024年
9月
2025年
3月
2025年
9月
OpenJDK バイナリ
Oracle JDK バイナリ
6ヶ月
3年
単一のソースコードに機能追加とメンテナンスを継続的に行う
3年
- 16. Copyright © 2017, Oracle and/or its affiliates. All rights reserved.
従来のOracle JDKのリリースと有償サポート期間
JDK 6 有償サポート
Oracle JDK 6 (無償)
JDK 7 有償サポート
Oracle JDK 7 (無償)
JDK 8 有償サポート
Oracle JDK 8 (無償)
EoPU
EoPU
EoPUGA
GA
GA
4年8ヶ月
2年9ヶ月
3年7ヶ月
最低8年
最低8年
最低8年
- 17. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. 17
新しいリリースモデル
(Java SE 9 から)
9
10
Oracle JDK 11 LTS
9
10
2026年
9月
2018年
3月 11
12
13
14
15
16
Oracle JDK 17 LTS17
18
19
20
21
Oracle JDK 23 LTS
22
2017年
9月
2018年
9月
2021年
9月
2024年
9月
無償更新
有償更新
無償更新
OpenJDK バイナリ
Oracle JDK バイナリ
2019年
9月
2020年
9月
2021年
9月
23
2021年
9月
2019年
3月
2020年
3月
2021年
3月
2022年
3月
2022年
3月
2022年
3月
9
10
8年
3年
6ヶ月
OpenJDK バイナリ Oracle JDK バイナリ
- 18. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
OpenJDKバイナリの入手はこちらから
- 19. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. | 19
古いバージョンの入手はどうなるの?
- 20. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
Oracle Java Archive サイトから引き続き入手可能
- 21. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
OpenJDKバイナリリリースのArchive提供も始まりました
- 22. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. | 22
安定したリリースを実現してほしい!
- 23. Copyright © 2017, Oracle and/or its affiliates. All rights reserved.
OpenJDKバイナリは3月と9月に必ずリリース
23
機能追加が間にあわなければ次のリリースへ
3月
4月 5月 6月 7月 8月
9月
10月 11月 12月1月 2月
Ver
Up
更
新
更
新
更
新
更
新
Ver
Up
新機能提供よりも定期リリースを優先
- 24. Copyright © 2017, Oracle and/or its affiliates. All rights reserved.
Java SE仕様の管理はひきつづきJCPが行う
24
• オラクルがOpenJDKバイナリを生成し、無償公開
• ライセンス: GPL v.2 + Classpath Exception
• オラクルがバイナリ生成、有償提供
• ライセンス:BCL
バイナリ
バイナリ
- 25. Copyright © 2017, Oracle and/or its affiliates. All rights reserved.
Javaを進化させる
25
- 26. Copyright © 2017, Oracle and/or its affiliates. All rights reserved.
What Is Being Open-Sourced in Java
▪ Application Class Data Sharing (Now available in OpenJDK 10 GA)
▪ Enables you to place classes from the standard extensions directories and the application class path in the shared archive
▪ Flight Recorder (Now available in OpenJDK 11 EA)
▪ Collects diagnostic and profiling data about a running Java application
▪ Mission Control (In preview)
▪ Monitor and manage Java applications with minimal performance overhead
▪ Usage Logger (Work in progress)
▪ Logs how the JRE’s are being used in your systems
26
- 27. Copyright © 2017, Oracle and/or its affiliates. All rights reserved.
Portola
ZGC
Loom
Valhalla
Panama
Amber
27
*詳細はJava Day Tokyo 2018 講演資料で!
新しいプロジェクトも続々登場
- 28. Copyright © 2017, Oracle and/or its affiliates. All rights reserved.
2つのJDKバイナリ:異なるライセンス
28
• ライセンス:GPL v.2 + Classpath Exception
• ライセンス: GPL v.2 + Classpath Exception
• ライセンス:BCL
ソースコード
バイナリ
バイナリ
- 29. Copyright © 2017, Oracle and/or its affiliates. All rights reserved.
リリース情報の提供
• 今までどおり ”OpenJDK”
(http://openjdk.java.net)
から提供
– 新機能情報も提供
• 詳しくは “Features” を参照
• JDK 11のリリース情報の提供開始
– Early Access版提供中
- 30. Copyright © 2017, Oracle and/or its affiliates. All rights reserved.
リリースドキュメントも重要
• Deprecatedの運用ルール
はそのまま
→ 最短1年で機能が
削除される可能性
Confidential – Oracle Internal/Restricted/Highly Restricted 30
- 31. Copyright © 2017, Oracle and/or its affiliates. All rights reserved.
新しいリリース・モデルのまとめ
これまでのモデル 新しいモデル
リリース
サイクル
リリースの時期 2年に一回 (目標) 6ヶ月に一回 (OpenJDK)
3年に一回(Oracle JDK)
バイナリ Oracle JDK OpenJDK
• GPLv2 + Classpath Exception
Oracle JDK
• BCL
無償更新期限 後継バージョンリリース後一年 後継バージョンリリースまで
長期サポート 対象のリリース すべての機能リリースに設定 3年ごとの機能リリースに設定
バイナリ Oracle JDK
更新期間 (有償) Oracle Lifetime Support Policy 準拠
アップデート
リリース
リリース時期 年4回 (1月, 4月, 7月, 10月)
内容 アップデートリリース
+ 限定機能更新
アップデートリリースのみ
- 32. Copyright © 2017, Oracle and/or its affiliates. All rights reserved.
公式アップデート終了のスケジュール
32
http://www.oracle.com/technetwork/java/eol-135779.html
リリース 利用開始 (GA) 公式アップデート終了の通知 公式アップデートの終了
5.0 2004年5月 2008年4月 2009年10月
6 2006年12月 2011年2月 2013年2月
7 2011年7月 2014年3月 2015年4月
8 2014年3月 2017年9月 2018年9月 -> 2019年1月
(個人利用に限り2020年末まで)
9 2017年9月 2017年9月 2018年3月
10 2018年3月 2018年3月 2018年9月
- 33. Copyright © 2017, Oracle and/or its affiliates. All rights reserved.
Java の商用サポート
http://www.oracle.com/us/support/lifetime-support-068561.html
リリース
提供開始
(GA)
Premier サポート
終了
Extendedサポート
終了
Sustaining
サポート
Java SE 6 2006年12月 2015年12月 2018年12月 あり
Java SE 7 2011年7月 2019年7月 2022年7月 あり
Java SE 7 Deployment Technology 2011年7月 2016年7月 設定なし あり
Java SE 8 2014年3月 2022年3月 2025年3月 あり
Java SE 8 Deployment Technology 2014年3月 2019年3月 2025年3月
(Java Web Startのみ)
あり
Java SE 9 (non-LTS) 2017年9月 2018年3月 設定なし あり
Java SE 10 (non-LTS) 2018年3月 2018年9月 設定なし あり
Java SE 11 (LTS) 2018年9月 2023年9月 2026年9月 あり
Sustaining Support
(標準: 無期限)
Extended Support
(標準:3年)
Premier Support
(標準:5年)GA
標準の Oracle Lifetime Support Policy
- 34. Copyright © 2017, Oracle and/or its affiliates. All rights reserved.
新リリースモデルと合わせて、改めてお知らせ
34
- 35. Copyright © 2017, Oracle and/or its affiliates. All rights reserved.
お知らせ①
• Java Plug-in および Java Web Start のサポートは Java SE 8 まで
– Java Plug-in: 公式アップデート終了は 2018 年 9 月、有償サポートは Premier 期間/2019 年 3 月まで
(2014年3月発表)
– Java Web Start: 公式アップデート終了は2019年1月(個人利用の場合は2020年末)、有償サポートは
2025年3月まで
– Java SE 10 以降、 Deployment Technology (Java Plug-in および Web Start) は
バンドルされない
- 36. Copyright © 2017, Oracle and/or its affiliates. All rights reserved.
お知らせ②
• Java SE 8 から以降、後継バージョンへの自動更新は行われない
• Java SE 9 以降の 32 ビット版バイナリ提供なし