JRE

JRE stands for Java Runtime Environment. It contains the Java Virtual Machine, libraries and the extra components that run applications and applets written in the Java language. It has two deployments: Java Plug-in and Java Web Start.

Java Plug-In

Java Plug-in, a part of Java SE (Standard Edition), is responsible for running the applets in popular browsers. It builds connections between the browsers and Java platforms. Java Plug-in in its current version is incorporated with a JRE download.

Java Web Start

Java Web Start is the deployment technology that is responsible for setting up independent applications throughout a network. Its framework was developed by Sun Microsystems. It does not operate inside browsers, unlike Java applets. The Java Platform immediately starts from the Internet directly through a web browser.

Java Virtual Machine – The Java Virtual Machine is a piece of software that allows Java to execute on a wide array of platforms. It lays down the essential environment for the Java bytecodes’ execution, while its flexibility permits a Java applet to be written once available.

  • Java Libraries – Java Libraries or a Java Class Library is a set of loadable libraries that Java applications use on runtime. The Java Platform does not depend on a specific OS (operating system); therefore, applications do not depend on existing libraries. The Java Platform, however, provides a set of libraries (standard class libraries) with similar reusable functions found in most modern OS.
  • Java Applets – Applets generally provide features that make web applications interactive. They can substitute HTML in this function. A Java applet is simply an applet delivered in Java bytecode form. Java applets run in Web browsers through a JVM or Java Virtual Machine, and can also be run through Sun’s AppletViewer — an independent tool for applet testing.

Java applets were present during the penetration of Java language in the IT industry in 1995. Later on, they became available in other programming languages that compile to Java bytecode, like Jython.