java - JDK和JRE有什么区别?

标签 java

Editors note: This question was asked in 2009 where the world was different. In 2022 the standard open sourced OpenJDK is JDK-only.


JDK和JRE有什么区别?

他们的角色是什么?我什么时候应该使用其中一个?

最佳答案

JREJava 运行时环境。它是运行已编译的 Java 程序所需的一切包,包括 Java 虚拟机 (JVM)、Java 类库、java 命令和其他基础设施。但是,它不能用于创建新程序。

JDKJava 开发工具包,是用于 Java 的全功能 SDK。它拥有 JRE 所拥有的一切,还包括编译器 (javac) 和工具(如 javadocjdb)。它能够创建和编译程序。

通常,如果您只关心在计算机上运行 Java 程序,您只会安装 JRE。这就是你所需要的。另一方面,如果您打算进行一些 Java 编程,则需要安装 JDK。

有时,即使您不打算在计算机上进行任何 Java 开发,您仍然需要安装 JDK。例如,如果您使用 JSP 部署 Web 应用程序,从技术上讲,您只是在应用程序服务器中运行 Java 程序。那你为什么需要JDK呢?因为应用服务器会将 JSP 转换为 Java servlet,需要使用 JDK 编译 servlet。我相信还有更多的例子。

关于java - JDK和JRE有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1906445/

相关文章:

java - 将二叉树打印到标准输出 Java

java - 如何通过Xpath提取登录用户的文本

java - 执行显示控制台窗口的命令并获取进程的句柄

java - java中如何一次性获取ArrayList的所有元素?

java - 如何计算Base64编码的字符串长度?

java - android sdk - 无法导入任何 java.* 类

java - Spring Boot在多模块项目中找不到jsp

java - java中有类似module.export的东西吗?

java - 如何对多个索引之间的 lucene 搜索结果进行排序?

java - javafx 中每个 .css 文件和行的 "Unknown property"警告