Differences between Java SE JRE or Java SE JDK distributions
suggest changeSun / Oracle releases of Java SE come in two forms: JRE and JDK. In simple terms, JREs support running Java applications, and JDKs also support Java development.
Java Runtime Environment
Java Runtime Environment or JRE distributions consist of the set of libraries and tools needed to run and manage Java applications. The tools in a typical modern JRE include:
- The
javacommand for running a Java program in a JVM (Java Virtual Machine) - The
jjscommand for running the Nashorn Javascript engine. - The
keytoolcommand for manipulating Java keystores. - The
policytoolcommand for editing security sandbox security policies. - The
pack200andunpack200tools for packing and unpacking “pack200” file for web deployment. - The
orbd,rmid,rmiregistryandtnameservcommands that support Java CORBA and RMI applications.
“Desktop JRE” installers include a Java plugin suitable for some web browser. This is deliberately left out of “Server JRE” installers.linux syscall read benchmarku
From Java 7 update 6 onwards, JRE installers have included JavaFX (version 2.2 or later).
Java Development Kit
A Java Development Kit or JDK distribution includes the JRE tools, and additional tools for developing Java software. The additional tools typically include:
- The
javaccommand, which compiles Java source code (”.java”) to bytecode files (”.class”). - The tools for creating JAR files such as
jarandjarsigner - Development tools such as:
- `appletviewer` for running applets
- `idlj` the CORBA IDL to Java compiler
- `javah` the JNI stub generator
- `native2ascii` for character set conversion of Java source code
- `schemagen` the Java to XML schema generator (part of JAXB)
- `serialver` generate Java Object Serialization version string.
- the `wsgen` and `wsimport` support tools for JAX-WS
- Diagnostic tools such as:
- `jdb` the basic Java debugger
- `jmap` and `jhat` for dumping and analysing a Java heap.
- `jstack` for getting a thread stack dump.
- `javap` for examining ".class" files.
- Application management and monitoring tools such as:
- `jconsole` a management console,
- `jstat`, `jstatd`, `jinfo` and `jps` for application monitoring
A typical Sun / Oracle JDK installation also includes a ZIP file with the source code of the Java libraries. Prior to Java 6, this was the only publicly available Java source code.
From Java 6 onwards, the complete source code for OpenJDK is available for download from the OpenJDK site. It is typically not included in (Linux) JDK packages, but is available as a separate package.