为了账号安全,请及时绑定邮箱和手机立即绑定

属性 java.runtime.version 和 java.version 有什么区别

属性 java.runtime.version 和 java.version 有什么区别

ABOUTYOU 2022-09-07 17:47:39
出于日志记录目的,我在Java程序运行时将Java版本写入日志中。我发现我可以得到版本System.getProperty("java.runtime.version") -> 1.8.0_202-b08和System.getProperty("java.version") -> 1.8.0_202结果显然缺少其他“构建”信息,但除了结果之外,还有其他区别吗?在我应该使用第一个选项而不是第二个选项的任何特定情况下?
查看完整描述

3 回答

?
慕容森

TA贡献1853条经验 获得超18个赞

System Property Name | System Property Content  | Where Displayed in java version Output

---------------------|--------------------------|---------------------------------------

java.version         | product version          | Line one displays the product version

---------------------|--------------------------|---------------------------------------

java.runtime.version | product version          | Line one displays the product version

                     | product build identifier | Line two displays the build identifier

从 J2SE SDK/JRE 版本字符串命名约定文档中:


可以扩展系统属性的内容(超出 java.version 系统属性的内容)以包含构建 ID。java.runtime.version

因此,属性值似乎可以等于内容,也可以通过构建 ID 进行区分,如问题中已指出的那样。java.runtime


无论如何,如前所述,如前所述,该属性不会出现在当前记录的系统属性中。java.runtime.version


查看完整回答
反对 回复 2022-09-07
?
萧十郎

TA贡献1815条经验 获得超13个赞

java.version是 Java 运行时环境 (JRE) 的产品版本信息。JRE是Java虚拟机的实现,它实际上执行Java程序。

java.runtime.version是产品版本以及 JRE 的构建标识符。


查看完整回答
反对 回复 2022-09-07
?
富国沪深

TA贡献1790条经验 获得超9个赞

一个是JDK版本,java.version,顾名思义,另一个是JRE版本,R用于运行时


查看完整回答
反对 回复 2022-09-07
  • 3 回答
  • 0 关注
  • 224 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号