JDK-JRE与JRE的JVM及lib的区别?
windows下安装JDK会安装两份JRE,一份在JDK目录下(这里称其为JDK-JRE),另一份(公共JRE)自行指定位置(还会释放java.exe到系统目录下)...JDK-JRE的bin里有份server jvm,这里不表
以前以为两份JRE是相同的,后来看到有人说到两者的rt.jar不同
今天二进制比较发现,两者的client-jvm不一样...
两者的lib里的各个jar大小均不一样...
JDK-JRE里的jar均比JRE里的要大
我随便挑了两个class文件(两个rt.jar里各一个同class)
其二进制码是不同的,JDK-JRE比JRE版本的略多几句...不知道影响是什么
但是反编译成java文件后,内容是一模一样的
分别用JDK-JRE里的库与JRE里库作为classpath,编译一段程序
得到的字节码是一模一样的
分别用JDK-JRE-JVM与JRE-JVM配合各自的classpath运行那段程序
耗时也是一模一样
有哪位童子知道两种JVM与各自库的区别到底是什么吗?
JDK-JRE的库多出来的是什么?
哪个性能更好?哪个更稳定?
注:Ubuntu下,JDK只安装一份JRE...没有安装公共JRE