JRE stands for Java Runtime Environment, which provides an environment at runtime. It is the cause of the implementation of JVM (as discussed earlier). It contains a set of supporting libraries combined with core classes and various other files that JVM uses at runtime. JRE is a part of JDK (Java Development Toolkit) but can be downloaded separately.
JDK is a set of software tools for the development of Java applications.
You need JRE to execute your program, which includes two things:
- JVM
- Java Library
- Static - Functions that are required at compile time.
- Dynamic - Functions that are required at runtime and not at compile time.
In detail, the JRE consists of various components; these are listed below:
- Java Web Start and Java Plug-in.
- User Interface Toolkit includes Abstract Window Toolkit (AWT), Swing, Image Input / Output, Accessibility, drag and drop, etc.
- Other different base libraries, including Input/Output, extension mechanisms, beans, JMX, JNI, networking, override mechanisms, etc.
- Lang and util base libraries, including lang and util, management, versioning, collections, etc.
- Integration libraries include Interface Definition Language (IDL), Java Database Connectivity (JDBC), Java Naming and Directory Interface (JNDI), and Remote Method Invocation (RMI).