这不是重复的。我希望在程序执行时获得当前的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
我该如何解决?
答案 0 :(得分:1)
运行Java程序时,它始终在JRE(Java运行时环境)上运行。您无法直接在JDK上运行程序。
安装Oracle的JDK时,会包含一个JRE,您可以在JDK安装目录的jre
目录中找到它。
安装Oracle的JDK时,您可以选择安装“公共JRE”。这是一个与JDK本身分开安装的JRE,由浏览器插件使用。只有在希望能够在浏览器中运行Java applet时才需要这样做。