Java 9中的新版本控制方案是什么?

从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