Java Runtime Environment (JRE)
The JRE is one of the key components in the Java Development Kit (JDK). It is a freely available software distribution which has all the tools required for a Java program to independently run and execute. These include a Java Class Library and a stand-alone Java Virtual Machine. The JRE is probably the most common environment in which Java-based programs run.
Why is the JRE required?
The Java application has a compiler which changes source code into byte code, making Java programs truly platform independent. Whenever you will want to run this bytecode on any platform, the JRM will be required. The JRE loads classes, verifies access to heap memory, and retrieves the system resources. JRE acts as an envelope in the operating system of your device.
It also includes:
- Java Web Start and other technologies which get used for deployment.
- Java 2D and other User Interface (UI) toolkits.
- Java libraries such as Java Naming and Directory Interface & Java Database Connectivity .
- Java libraries such as lang and util.
- Other libraries such as Java Management Extensions, Java Native Interface & Java for XML Processing (JAX-WS).
Components of JRE
- Deployment Technologies like Java Web Start as mentioned before.
- Abstract Window Toolkit (AWT), Swing, and other user interface toolkits.
- Interface Definition Language (IDL), JDBC, JNDI, Remote Method Invocation (RMI), Remote Method Invocation over Internet Inter-Orb Protocol (RMI-IIOP) and scripting.
- Base Libraries like JMX, Beans, JNI, Math, Security, Serialization and Java for XML Processing (XML JAXP).
- Java Libraries, Java Archive (JAR), instrument, reflection, Collections, Concurrency Utilities, and Regular Expressions.