Java 9の新しいバージョニングスキームとは?セマンティックバージョニングの仕組みを解説
Java 9以降、バージョニングはセマンティックバージョニング(意味論的バージョニング)と整合するようになりました。バージョン番号はドットで区切られた空でない文字列のシーケンスとして表現され、「メジャーバージョン番号」「マイナーバージョン番号」「セキュリティレベル」という3つの主要部分から構成されます。
この新しいバージョニング方式は Runtime.Version クラスに定義されており、このクラスを通じてバージョン情報へ簡単にアクセスできるようになっています。
バージョン番号のフォーマット
バージョン番号は以下の形式で表されます。
$MAJOR.$MINOR.$SECURITY(.$otherpart)?
各要素の意味
- $MAJOR:メジャーバージョン番号。プラットフォーム仕様が大きく変更されるメジャーリリースの際にインクリメントされます。JDK 9の場合、この値は「9」です。
- $MINOR:マイナーバージョン番号。バグ修正や標準APIへの機能拡張を含むリリースの際にインクリメントされます。
- $SECURITY:セキュリティレベル。重要なセキュリティ修正を含むリリースの際にインクリメントされます。なお、マイナーバージョン番号が上がってもゼロにリセットされない点に注意してください。
- $otherpart:JVMベンダーが、セキュリティ以外の軽微な修正パッチを示すために使用する1つ以上のバージョン要素です。
バージョン文字列のフォーマット
バージョン文字列には、早期アクセス版の識別子やビルド番号といった追加情報を含めることもできます。許容される形式は以下の通りです。
$VNUM(-$PRE)?\+$BUILD(-$OPT)? $VNUM-$PRE(-$OPT)? $VNUM(+-$OPT)?
- $PRE:プレリリース(先行公開版)を示す識別子です。
- $BUILD:ビルド番号です。
- $OPT:タイムスタンプなど、任意の追加情報です。
実装例
次のコードでは、Runtime.version() を使ってバージョン情報を取得し、その全体表現および各構成要素を出力しています。
public class VersionSchemeTest {
public static void main(String args[]) {
System.out.println(Runtime.version().toString()); // バージョンの文字列表現
System.out.println(Runtime.version().major()); // メジャーバージョン番号
System.out.println(Runtime.version().minor()); // マイナーバージョン番号
System.out.println(Runtime.version().security()); // セキュリティバージョン番号
}
}
出力結果
9.0.4+11 9 0 4
このように、Java 9の新しいバージョニングスキームを利用することで、リリースの種類(メジャー・マイナー・セキュリティ)を番号から直感的に判別でき、アプリケーションの依存関係管理や互換性チェックもより明確に行えるようになります。
-
Windows 10 バージョン20H2(2020年10月アップデート)の新機能を徹底解説
Windows 10 Version 20H2は、先行リリース版をベースに、パフォーマンスの向上、企業向け機能、品質面の改善が加えられた機能アップデートです。さらに、バグ修正やセキュリティ修正などのサポート提供期間も6ヶ月間延長されています。 Windows 10 バージョン20H2の主な新機能 2020年10月に配信されたWindows 10 20H2(October 2020 Update)は、初代Windows 10から数えて10回目となる大型アップデートであり、同年2度目の半期ごとの機能更新です。ここでは、その主な変更点をご紹介します。 デザインが刷新されたスタートメニュー 改善さ
-
iOS 13.3の新機能を徹底解説!注目の15の変更点とアップデート方法
2019年9月にiOS 13が登場して以来、新機能の追加やバグ修正、各種改善を目的としたアップデートが続々とリリースされてきました。そして2019年12月10日、iOS 13.3が正式リリース。多数の新機能に加え、バグ修正やパフォーマンス改善も盛り込まれています。対応するiOSデバイスをお使いの方は、ぜひ最新アップデートをダウンロードしましょう。iPhoneを最新のiOSバージョンに更新するには、「設定」アプリ→「一般」→「ソフトウェア・アップデート」の順に進みます。自動的にアップデートが確認され、最新バージョン「iOS 13.3」がダウンロード可能な状態で表示されます。それでは、iOS 13