jre 和 jdk 有什么区别? 为什么安装 jdk 后会有两套 jre?(一套一般在c:\program files\java\jre 下,一套自己选择的 jdk 安装路径下,如:c:\program files\java\jdk1.6\jre
JRE 提供了 JAVA 程序运行的必要环境平台;
jdk 提供了 java 的编程环境,它包含编译调试的环境功能,包含 JRE ;
如果只安装了 jre ,那么 cmd 命令行中只能执行 java 指令,不能执行 javac ;
安装好 jdk 后才能执行 javac ,因为 jre 中不包含用于开发的编译环境;
之所以需要两套 jre ,是因为可以分担工作;当用户只需要执行 java 的程序时,那么 c:\program files\java\jre 下的 jre 就 ok !当用户是 java 程序员,需要 java 开发环境,那么开发时,系统就会优先去找“ java 、 javac ”这些命令本身的目录或者他们的父目录的 jre ;这样开发时一般运行的是 jdk 下的 jre ;而运行外部程序时,一般运行的是c:\program files\java\jre ,实现了分工,不同的 jre 负责各自范围的内容;
补充一点jdk 下的 lib 与 jre 下的 lib 有何区别?
jdk下的lib包括java开发使用的jar包,jre下的lib是运行java程序的jar包;