Java系统属性

Java系统属性,java,Java,“java.version”和“java.vm.version”之间有什么区别 当我使用后者时,我得到了类似“11.3-b02”的东西。这意味着什么?虚拟机版本是虚拟机软件的版本,而java.version是java语言的版本(即规范)。比较类似于C++规范(特征等)的版本与C++编译器(版本号等)的版本。这有意义吗?如果没有,我可以尝试进一步澄清 问候,, chrisjava.version是该语言实现的版本java.vm.version是下面引擎的版本。该引擎可能在性能上有很大的改进,在功能

“java.version”和“java.vm.version”之间有什么区别


当我使用后者时,我得到了类似“11.3-b02”的东西。这意味着什么?

虚拟机版本是虚拟机软件的版本,而java.version是java语言的版本(即规范)。比较类似于C++规范(特征等)的版本与C++编译器(版本号等)的版本。这有意义吗?如果没有,我可以尝试进一步澄清

问候,,
chris

java.version是该语言实现的版本
java.vm.version
是下面引擎的版本。该引擎可能在性能上有很大的改进,在功能上没有变化的情况下,看起来像是小版本,所以它是单独进行版本控制的

有关更多详细信息,以下是Sun和Oracle如何描述这些选项:

说:

  • java.version-java运行时环境版本
  • java.vm.version-java虚拟机实现版本
Oracle的文档更为清晰:

  • -此属性标识J2SE JDK/JRE产品版本;也就是说,您正在运行哪个版本的JDK或JSE。版本号也出现在输出的第一行,是Sun JRE和Oracle JRockit JRE的共同版本号。此属性生成的信息以以下格式显示:
    。[\u][-]
    该值在下面的示例版本输出中以粗体显示:
    <jdk_major_version>.<jdk_minor_version>.<jdk_micro_version>[_<jdk_update_version>][-<milestone>]
    java version "1.5.0_03" Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_03-b07) BEA JRockit(R) (build dra-45238-20050523-2021-win-ia32, R25.2.0-28) java版本“1.5.0_03” Java(TM)2运行时环境,标准版(build 1.5.0_03-b07) BEA JRockit(R)(构建dra-45238-20050523-2021-win-ia32,R25.2.0-28)有关java.version的更多信息,请参阅:

  • -此属性标识JVM实现版本。版本ID出现在java-version输出的第三行。此ID是区分JRockit JVM版本的主要方法。下面是JRockit JVM的几个不同版本的示例

    • JRockit JVM R24.5.0:ari-49095-20050826-1856-win-ia32
    • JRockit JVM 5.0 SP2:dra-45238-20050523-2021-win-ia32
    • JRockit JVM R26.4.0:R26.4.0-63-63688-1.5.0_06-20060626-2259-win-ia32
    • JRockit JVM R27.3.1:R27.3.1-1-85830-1.6.0_01-20070716-1248-windows-ia32
我发现在Java6中,提到java.vm.version属性的a被搞砸了。不要提及java.vm.version属性。IBM,所以它可能特定于您正在使用的JVM,但不是规范的一部分