Java 10 - 時間ベースのリリース バージョニング
JEP 322 − 時間ベースのリリース バージョニング
Java 10 以降、Oracle は Java リリースに厳密な時間ベースのリリース バージョン管理モデルを導入しました。現在、Java は 6 か月ごとにメジャー リリースされます。 Java 10 は 2018 年 3 月にリリースされ、その後、すべてのメジャー バージョンが今後数年間の 3 月と 9 月にリリースされる予定です。リリースは、さらに 3 つの広範なカテゴリに分類されます。
- <リ>
機能リリース − フィーチャー リリースには、言語固有の機能、JVM 機能、新規/改善された API、API の削除/非推奨が含まれます。これらの機能リリースの時期は固定されており、特定のリリースに含まれる機能に制限はありません。開発中の機能が最新リリースに含まれていない場合は、次のリリースで計画されます。
<リ>更新リリース − 更新リリースには、バグ修正、セキュリティ問題の修正、回帰修正などが含まれます。各更新リリースは、1 月、4 月、7 月、10 月の四半期ごとに計画されています。各機能リリースは、次の機能リリースが発表される前に 2 つの更新リリースを受け取ります。
<リ>長期サポート (LTS) リリース − 長期サポート リリースは、2018 年 9 月から 3 年ごとに発表されます。オラクルは、今後 3 年間、このリリースのサポートとアップデートを提供します。このリリースは主に、本番環境で Java を使用している企業向けです。
バージョン形式
バージョンは現在、次の形式に従います。
$FEATURE.$INTERIM.$UPDATE.$PATCH
どこ
- <リ>
$FEATURE − この番号は主要な機能リリースを示し、機能リリースごとに 1 ずつ増加します。 Java 10 の場合は 10 です。
<リ>$INTERIM − この番号は、バグ修正と機能強化を含む、非機能、非アップデート リリースを示します。このリリースには、互換性のない変更、API の削除、または標準 API への変更はありません。機能リリースでは、このカウンターは 0 になります。
<リ>$UPDATE − この番号は、機能リリース後に行われたアップデート リリースを示します。たとえば、2018 年 4 月の Java の更新リリースは JDK 10.0.1 で、2018 年 7 月の Java の更新リリースは JDK 10.0.2 などです。
<リ>$PATCH − この番号は、重大な問題が緊急にプロモートされる場合にのみ増加する緊急リリースを示します。
例
次のプログラムは、JAVA 10 のバージョン管理の詳細を示しています。
public class Tester { public static void main(String[] args) { Runtime.Version version = Runtime.version(); System.out.printf(" feature: %s%n interim: %s%n update: %s%n patch: %s%n", version.feature(), version.interim(), version.update(), version.patch()); } }
出力
次の出力が表示されます。
feature: 10 interim: 0 update: 2 patch: 0
Java