【问题标题】:Get JRE version from System Property从系统属性获取 JRE 版本
【发布时间】:2016-05-11 08:49:03
【问题描述】:

这不是重复的。我想在程序执行时获取当前的 JRE 版本。

为了测试结果,我安装了 JDK 8.91(没有安装 JRE 8.91)和 JRE 8.77。我还创建了 JRE_HOME、JAVA_HOME 变量、JDK 文件夹中排除的 Path 变量。

我的 Tomcat 使用 JRE,所以我想在启动它之前获取当前的 JRE 版本。我找到了类似的解决方案:

System.getProperty("java.version")

执行后

System.out.println(System.getProperty("java.version"))

我得到了1.8.0_91 的结果,而不是我想要得到的1.8.0_77

但是,Oracle 文档给出了这是 JRE 版本的定义。

链接:http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/System.html#getProperty%28java.lang.String%29

我该如何解决?

【问题讨论】:

  • Java 程序总是在 JRE(Java 运行时环境)上运行。没有在 JDK 上运行的程序之类的东西。 JRE 版本 8 更新 91 包含在 JDK 8 更新 91 中。安装 JDK 时,始终包含 JRE。在你的 JDK 主目录中有一个 jre 目录。
  • @Jesper 我明白这一点。在安装 JDK 时,我可以选择是否安装 JRE。我也没有看到安装了 JRE 8.91。
  • 我不清楚你的问题到底是什么。什么不符合您的预期,您想解决什么问题?
  • 安装 JDK 时,您可以选择安装 public JRE,它是独立于 JDK 的 JRE 安装。但是即使不安装公共 JRE,JDK 目录中仍然包含一个 JRE。
  • @Jesper 这让我很清楚,谢谢。请将其发布为答案

标签: java


【解决方案1】:

当您运行 Java 程序时,它总是在 JRE(Java 运行时环境)上运行。您不能直接在 JDK 上运行程序。

安装Oracle的JDK时,包含一个JRE,可以在JDK安装目录的jre目录下找到。

安装 Oracle 的 JDK 时,您可以选择安装“公共 JRE”。这是一个独立于 JDK 本身安装的 JRE,供浏览器插件使用。仅当您希望能够在浏览器中运行 Java 小程序时才需要它。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-01-26
    • 2013-12-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-14
    • 1970-01-01
    • 2017-06-10
    相关资源
    最近更新 更多