编者注:这个问题是在2009年提出的,世界在哪里不同。到2022年,标准的开源OpenJDK将只支持jdk。
JDK和JRE有什么区别?
它们的角色是什么,什么时候应该使用其中一个或另一个?
编者注:这个问题是在2009年提出的,世界在哪里不同。到2022年,标准的开源OpenJDK将只支持jdk。
JDK和JRE有什么区别?
它们的角色是什么,什么时候应该使用其中一个或另一个?
当前回答
从官方java网站…
JRE (Java运行环境):
它是实际执行Java程序的Java虚拟机*的实现。 Java运行时环境是运行Java程序所需的插件。 JRE比JDK小,所以它需要更少的磁盘空间。 JRE可从 https://www.java.com 它包括JVM、核心库和其他附加组件,用于运行用Java编写的应用程序和小程序。
JDK (Java Development Kit)
它是一组软件,可以用来开发基于Java的应用程序。 开发Java应用程序需要Java开发工具包。 JDK需要更多的磁盘空间,因为它包含JRE和各种开发工具。 JDK可以免费下载/支持 https://www.oracle.com/technetwork/java/javase/downloads/ 它包括JRE、一组API类、Java编译器、Webstart和编写Java小程序和应用程序所需的附加文件。
其他回答
JDK包括JRE和命令行开发工具,如编译器和调试器,这对于开发applet和应用程序是必要的或有用的。
JRE基本上是运行Java程序的Java虚拟机。它还包括用于Applet执行的浏览器插件。
JDK是一个抽象机器。它是一个提供运行时环境的规范,在该环境中可以执行java字节码。
所以,基本上JVM < JRE < JDK就像@Jaimin Patel说的那样。
从官方java网站…
JRE (Java运行环境):
它是实际执行Java程序的Java虚拟机*的实现。 Java运行时环境是运行Java程序所需的插件。 JRE比JDK小,所以它需要更少的磁盘空间。 JRE可从 https://www.java.com 它包括JVM、核心库和其他附加组件,用于运行用Java编写的应用程序和小程序。
JDK (Java Development Kit)
它是一组软件,可以用来开发基于Java的应用程序。 开发Java应用程序需要Java开发工具包。 JDK需要更多的磁盘空间,因为它包含JRE和各种开发工具。 JDK可以免费下载/支持 https://www.oracle.com/technetwork/java/javase/downloads/ 它包括JRE、一组API类、Java编译器、Webstart和编写Java小程序和应用程序所需的附加文件。
JDK是JRE的超集,包含JRE中的所有内容,以及开发小程序和应用程序所需的编译器和调试器等工具。JRE提供库、Java虚拟机(JVM)和其他组件来运行用Java编程语言编写的小程序和应用程序。
如果你是一个Java程序员,你的系统中需要JDK,这个包将包括JRE和JVM,但如果你是一个喜欢玩在线游戏的普通用户,那么你只需要JRE,这个包中没有JDK。
JVM JVM (Java Virtual Machine) is an abstract machine. It is a specification that provides runtime environment in which java bytecode can be executed. JVMs are available for many hardware and software platforms. JVM, JRE and JDK are platform dependent because configuration of each OS differs. But, Java is platform independent. JRE It contains everything you need to run Java applications in compiled form. You don't need any libraries and other stuffs. All things you need are compiled. JRE is can not used for development, only used for run the applications. Java SE Development Kit (JDK) The JDK includes the JRE plus command-line development tools such as compilers and debuggers that are necessary or useful for developing applets and applications.
(来源:GeeksForGeeks Q&A, Java平台概述)
JVM、JRE和JDK依赖于平台,因为每个操作系统的配置不同。但是,Java是平台独立的。
Java虚拟机(JVM)是执行Java字节码的运行时系统。
JRE是运行Java应用程序所需的环境(标准库和JVM)。
JDK包括JRE和命令行开发工具,如编译器和调试器,这对于开发applet和应用程序是必要的或有用的。