JDK是面向开发者的完整工具包,含编译器、调试器等,能编译调试运行Java程序;JRE仅面向运行环境,只含JVM和类库,只能运行已编译的.class文件;JDK内置JRE,结构更全,适用开发场景,JRE更轻量,适用于生产部署。
JRE和JDK最核心的区别在于:JDK是给开发者用的,它能编译、调试、运行Java程序;JRE只负责运行已编译好的Java程序,不带任何开发能力。
JDK(Java Development Kit)是一套完整的开发工具包,面向程序员。它包含编译器(javac)、调试器(jdb)、文档生成器(javadoc)、打包工具(jar)等,用于从写代码到发布全流程。
JRE(Java Runtime Enviro
nment)是运行环境,面向普通用户或部署服务器。它只含Java虚拟机(JVM)和Java标准类库(如rt.jar),用来加载、校验、执行.class字节码文件。
JDK内部其实就“裹着”一套JRE——通常在jdk/jre/目录下。也就是说,JDK = JRE + 开发工具集(bin目录下的各种.exe/.sh命令)+ 头文件(include)+ 工具类库(tools.jar)。
JRE本身结构精简,只有两个关键部分:
如果你在系统里同时装了独立JRE和JDK,很可能看到两套JRE目录:一套在C:\Program Files\Java\jreX,另一套在C:\Program Files\Java\jdkX\jre,内容基本一致。
日常开发必须装JDK,IDE(如IntelliJ、Eclipse)底层依赖它的编译器和调试接口;而生产服务器若只部署现成的Spring Boot jar包,只需JRE即可,更轻量、更安全(少暴露开发工具面)。
打开终端,运行:
java -version # 显示JRE版本信息(所有情况都可用)
javac -version # 若提示“command not found”,说明没装JDK或未配置PATH
再看安装路径: