什么是 JDK 什么是 JRE?JDK 和 JRE 的关系
我们看看来自百度百科的解释:
JDK 是 Java 语言的软件开发工具包, 主要用于移动设备, 嵌入式设备上的 java 应用程序. JDK 是整个 java 开发的核心, 它包含了 JAVA 的运行环境 (JVM+Java 系统类库) 和 JAVA 工具.-- 百度百科
JRE 是 Java Runtime Environment 缩写, 指 Java 运行环境, 是 Sun 的产品. 运行 JAVA 程序所必须的环境的集合, 包含 JVM 标准实现及 Java 核心类库.-- 百度百科
《深入理解 Java 虚拟机: JVM 高级特性与最佳实践(第 2 版)》:
我们可以把 , Java 虚拟机, Java API 类库这三部分统称为 JDK(Java Development Kit),JDK 是用于支持 Java 程序开发的最小环境... 另外, 可以把 Java API 类库中的 Java SE API 子集和 Java 虚拟机这两部分统称为 JRE(Java Runtime Environment),JRE 是支持 Java 程序运行的标准环境.-《深入理解 Java 虚拟机: JVM 高级特性与最佳实践(第 2 版)》
书中同样提到了 Java 技术体系所包含的内容及 JDK 和 JRE 所涵盖范围:
(图片来源于网络)
根据如上所说, 我们可以总结出如下图所示的 JDK 和 JRE 的关系图:
也就是说 JDK 包含了 JRE, 这一点我们可以证实, 在安装 JDK 的目录下找到 JRE 的文件夹:
JDK(Java Development Kit)是我们学习 Java 首先要安装的软件, 值得注意的是 JDK 安装完成之后, 安装向导会询问你是否安装 JRE(Java Runtime Environment), 还要不要安装呢? 知道 JDK 和 JRE 是什么关系后回答这个问题就不难了吧.
也就是说, 当你安装 JDK 完成后已经默认安装了 JRE , 因为安装完 JDK 肯定是要开发的吧, 开发就要运行 Java 程序, 所以 JDK 包含了 Java 的运行环境 JRE. 如果你只是单纯的要运行 Java 程序而不进行开发, 调试等, 那么就只需要安装 JRE 就行了.
所以上文提到的问题, 对于开发人员来说安装完 JDK 后就不需要再安装 JRE 了.
服务器上是否只安装 JRE 就可以了?
另外一个问题, 既然如此, 那么在服务器上是否只安装 JRE 就可以了?
理论上是可以的, 但是有前提条件.
服务器上只安装 JRE 的前提:
发布到服务器上时所有文件都是编译好的文件, 包括 JSP 文件
后期不在服务器上直接修改(因为导致修改后的文件未重新编译)
如果部署的项目都是编译后重新部署, 不在服务器上直接修改的话是可以只安装 JRE 的.
注意: 如果存在未编译的 Java 源文件, 或者在服务器上修改源文件, 服务器就需要安装 JDK.
在服务器上安装 JDK 的好处:
可以编译 java 文件, 方便后期维护
保证 JSP 文件修改后稳定运行
综合考虑, 为避免以后这样那样的麻烦事发生, 服务器上还是安装 JDK 吧! 毕竟项目后期维护才是主要的事情.
来源: http://www.bubuko.com/infodetail-3123704.html