Skip to content

JRE vs JVM vs JDK

JVM

JVM is an abstract machine that provides a runtime environment in which Java bytecode can be executed.

When a Java program is run, Java compiler compiles hat code to bytecode and then JVM translates bytecode into machine code.

JRE

JRE (Java Runtime Environment) is a software tools that provides set of libraries, JVM, and other components that are required to run Java applications. JRE is the superset of JVM.

JDK

The Java Development Kit (JDK) is a software development kit used to develop Java applications. It physically exists. JDK is bundled with JRE, compilers, debuggers, Java doc and so on.

JVM, JRE, and JDK are platform dependent because the configuration of each OS is different from each other whereas Java is platform independent.