問題:JDK和JRE區別是什么
他們的角色分別是什么?我們應該什么時候使用他們?
回答一
JRE是Java Runtime Environment(Java運行時環境)。它是一個包,集合了運行一個編譯好的Java程序的一切必須的東西,包括Java虛擬機(JVM),Java 的類庫,Java 命令和其他一些基礎設施。但是它不能用于創建一個程序
JDK是Java Development Kit(Java 開發工具),它是功能齊全的Java SDK。它擁有JRE包含的一切,而且還有編譯器 (javac)和工具(像 (javadoc 和jdb))。它有能力創建和編譯一個程序。
通常來說,如果你只需要在你的電腦上運行一個Java程序,那你只需要安裝JRE就夠了。它能滿足你所有需要。另一個方面,如果你想寫一些java程序,你就需要安裝JDK了。
有時候,即使你不打算在你的電腦上做Java開發,你仍然需要安裝JDK。例如,你癥狀部署一個jsp的web應用程序,你只是技術性地運行一個Java程序在你的應用服務器上,為什么你還需要JDK呢?因為這個應用服務器會轉換JSP成為Java servlets,并且需要使用JDK去編譯這個serlets。當然還有更多的例子啦。
回答二
JDK是JRE的父集,包括了JRE的所有東西,外加一些工具例如編譯器和必須的調試器用于開發applets 和 applications。JRE提供一些庫和Java虛擬機(JVM),和其他用Java編程語言編寫用于運行applets 和applications的一些組件。
文章翻譯自Stack Overflow:https://stackoverflow.com/questions/1906445/what-is-the-difference-between-jdk-and-jre