2013-07-02 34 views
7

究竟是什么?我能找到这个代码的最信息(来自http://sanjaal.com/java/tag/find-java-vendor/什么是供应商谈论Java时?

public class GetJavaVersionAndVendor { 

    public static void main(String args []) 
    { 
     String version=System.getProperty("java.version"); 
     String vendor=System.getProperty("java.vendor"); 

     System.out.println("Java Version Is: "+version); 
     System.out.println("Java Vendor Is: "+vendor); 
    } 

} 

此代码给我起的名字“Oracle公司”,我猜是我目前已经安装了Java版本的开发。

我还发现列为“Sun Microsystems Inc”的属性已更名为“Oracle Corporation”。因此,我假定这个“供应商”有一个属性文件。那是对的吗?

回答

10

卖方为只是JVM的创建者/维护者。 Sun在几年前被Oracle收购,因此“Sun JVM”或多或少被重新命名为“Oracle JVM”。有很多不同的JVM实现。每个人都必须遵循JVM Spec。看看完整的List of JVMs

+0

感谢您的快速回答!很有帮助。 – uranibaba

9

供应商是指JVM的实施者,是Oracle(或)IBM(或)其他的JVM/JRE。其中每个都有自己的JVM实现。

实施例:

java.vendor = Sun Microsystems Inc. 
java.vendor.url = http://java.sun.com/ 
+0

这是新的我,每个JVM自己的实现?我很好奇。你能提供一些链接吗? –

+2

@PrasadKharkar:http://en.wikipedia.org/wiki/List_of_Java_virtual_machines – kosa

+1

[IBM有一个JDK](http://www.ibm.com/developerworks/java/jdk/),[HP有一个HP/UX)](https://h20392.www2.hp.com/portal/swdepot/displayProductInfo.do?productNumber=HPUXJAVAHOME),[Apache Harmony](http://harmony.apache.org/)可能还没有另一个供应商字符串,... –

1

oracle javatutorial

“java.vendor”:JRE供应商名称

卖方可以是甲骨文,IBM或他人

+0

这有点不言自明。 – arshajii

3

如果它遵循Java Virtual Machine Specification,可以由不同的公司开发A JVM。如果你想阅读规范,你甚至可以自己实现。您看到的“Oracle Corporation”显示Oracle开发了您当前的JVM。如果不满意Oracle的话,不同的公司会自己制作JVM。例如,自定义JVM应该仍然能够正确运行Java代码,但它可能会提供一些高级安全性。