我正在使用哪个JRE
有2个品种的JRE可用。 Java VM:IBM vs Sun
有什么办法通过java脚本或一些Java发布的命令知道我正在使用哪个JRE。
System.out.println(System.getProperty("java.vendor")); System.out.println(System.getProperty("java.vendor.url")); System.out.println(System.getProperty("java.version")); Sun Microsystems Inc. http://java.sun.com/ 1.6.0_11
http://docs.oracle.com/javase/tutorial/essential/environment/sysprop.html
以下命令会告诉你很多关于你的java版本的信息,包括供应商:
java -XshowSettings:properties -version
适用于Windows和Linux
- 打开你的:
- 命令提示符如果您使用的是Windows
- terminal如果您使用的是Mac或Linux
-
input:
java -version // this will check your jre version javac -version // this will check your java compiler version if you installed the jdk
- 抓一杯咖啡,你做完了! 如果一切安装正确,则不需要将.exe添加到java -version
在linux中:
java -version
在Windows中:
java.exe -version
如果您需要更多关于jvm的信息,您可以使用参数-XshowSettings:properties
调用可执行文件。 它会显示大量的系统属性 。 这些属性也可以通过Java类中的静态方法System.getProperty(String)
来访问。 举个例子,这是一些可以被贬低的属性的摘录:
$ java -XshowSettings:properties -version [...] java.specification.version = 1.7 java.vendor = Oracle Corporation java.vendor.url = http://java.oracle.com/ java.vendor.url.bug = http://bugreport.sun.com/bugreport/ java.version = 1.7.0_95 [...]
所以如果你需要从Java代码中访问任何这些属性,你可以使用:
System.getProperty("java.specification.version"); System.getProperty("java.vendor"); System.getProperty("java.vendor.url"); System.getProperty("java.version");
你可以从系统属性对象中找出当前正在运行的JVM的版本; 请参阅System.getProperties()
的javadoc。 “java.vm.vendor”属性给出JVM供应商名称; 例如
String vendor = System.getProperty("java.vm.vendor");
(如果你在一个沙箱中执行,安全pipe理器可能会阻止你读取系统属性,如果是这样的话,那么你几乎是不幸的)。
如果使用-version
命令行参数,某些JVM会报告版本号,但是假定您可以运行命令,并且知道java
命令的/path的名称或等价物。 (这意味着有鸡和鸡蛋的问题…)
正如你期望它知道使用JS,我相信你想知道你的浏览器使用JRE版本。 因此,你可以包括Java版本testing器小程序,它可以准确告诉你当前浏览器的版本。
import java.applet.*; import java.awt.*; public class JavaVersionDisplayApplet extends Applet { private Label m_labVersionVendor; public JavaVersionDisplayApplet() //constructor { Color colFrameBackground = Color.pink; this.setBackground(colFrameBackground); m_labVersionVendor = new Label (" Java Version: " + System.getProperty("java.version")+ " from "+System.getProperty("java.vendor")); this.add(m_labVersionVendor); } }
我有一个问题,我的Java应用程序退出工作,无法辨别我能find。 原来,我的系统开始使用64位版本,而不是32位版本(Windows Server 2012)。 在Windows中,命令:
Javaw -version
只是把我带回没有任何信息的命令提示符。 直到我尝试
Javaw -Version 2>x.txt type x.txt
它给了我正在执行的是64位版本。 它归结为我的PATH
环境variables首先find64位版本。
打开命令提示符
Version: java -version Location: where java ( in Windows) which java ( in Unix/Linux/Mac)
在Windows中设置Java主页:右键单击我的电脑 – >属性 – >高级系统设置 – >环境variables – >系统variables – >新名称为JAVA_HOME值为(例如)c:\ programfiles \ jdk
selectpath,然后点击编辑,保存在:%JAVA_HOME%\ bin; …剩余的设置在这里