JVM(Java虚拟机)、JDK(Java开发工具包)、JRE(Java运行环境)和OpenJDK之间有什么区别?

374
JVM、JDK、JRE和OpenJDK之间有什么区别?

可能是[Java SE 6 vs. JRE 1.6 vs. JDK 1.6 - What do these mean?](https://dev59.com/_XVC5IYBdhLWcg3wliCe)的重复问题。 - user207421
22个回答

0
layman terms:- JDK = JRE + Development/debugging tools, 其中JDK是我们与Java一起工作的完整包,从创建编译到运行。另一方面,JRE仅用于运行代码(字节码)。
注意:无论我们安装JDK还是JRE,JVM都会捆绑在两个软件包中,而JVM是JIT编译器将字节码转换为机器特定代码的部分。
刚刚阅读了JDK,JRE,JVM和JIT的文章。

0

JDK - 包含像 javac 这样的工具,用于将 *.java 文件编译为 *.class 字节码文件(基本上是开发 Java 程序)

JRE - 包含运行 *.jar 文件所需的工具(基本上是运行 Java 程序)

JVM - 包含将 *.class 文件编译为可执行机器代码的工具(运行所有 Java 字节码)

OpenJDK 只是 Java JDK 的一个发行版。


您的回答可以通过添加更多支持性信息来改进。请进行[编辑],添加进一步细节,如引用或文档,以便其他人确认您的答案的正确性。您可以在帮助中心中找到有关编写良好答案的更多信息。 - Community

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接