从Java 9开始,版本控制可以与语义版本控制保持一致。版本号可以是由点分隔的非空字符串序列。它包含三个主要部分:主要版本号,次要版本号和安全性。新的版本控制方案已在运行时中记录。可以从中访问版本类和版本信息。
版本号具有以下格式:$MAJOR.$MINOR.$SECURITY(.$otherpart)?$MAJOR是主要版本号,当主要版本发布(通常会更改平台规范)时增加。对于JDK 9,此值为9。
$MINOR是次要版本号,对于包含错误修复和对标准API的增强的发行版,则递增。
$SECURITY是安全级别,对于包含关键安全修复程序的发行版,它会递增。当次要版本号增加时,该版本不能重置为零。
$otherpart由一个或多个版本组成,JVM提供程序已使用这些版本来指示带有少量非安全修复程序的补丁程序。
版本字符串可以是带有其他一些信息的版本号,例如早期访问版本标识符或内部版本号:$VNUM(-$PRE)?\+$BUILD(-$OPT)?
$VNUM-$PRE(-$OPT)?
$VNUM(+-$OPT)?$PRE是预发行标识符。
$BUILD是内部版本号。
$OPT是可选信息,例如时间戳。
示例public class VersionSchemeTest {
public static void main(String args[]) {
System.out.println(Runtime.version().toString()); // String representation of the version
System.out.println(Runtime.version().major()); // major version number System.out.println(Runtime.version().minor()); // minor version number System.out.println(Runtime.version().security()); // security version number }
}
输出结果9.0.4+11
9
0
4