The Java Runtime Environment (JRE) is a software package which bundles the libraries (jars) and the Java Virtual Machine, and other components to run applications written in the Java. JVM is just a part of JRE distributions.
To execute any Java application, you need JRE installed in the machine. It’s minimum requirement to execute Java applications on any machine.
JRE bundles the following components –
DLL files used by the Java HotSpot Client Virtual Machine.
DLL files used by the Java HotSpot Server Virtual Machine.
Code libraries, property settings, and resource files used by the Java runtime environment. e.g. rt.jar and charsets.jar.
Java extension files such as localedata.jar.
Contains files used for security management. These include the security policy (java.policy) and security properties (java.security) files.
Jar files containing support classes for applets.
Contains TrueType font files for use by the platform.
JREs can be downloaded as part of JDKs or you can download them separately. JREs are platform dependent. It means that based on the type of machine (OS and architecture), you will have to select the JRE bundle to import and install.
For example, you cannot install a 64-bit JRE distribution on 32-bit machine. Similarly, JRE distribution for Windows will not work in Linux; and vice-versa.