Sun / 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 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:
java
command for running a Java program in a JVM (Java Virtual Machine)jjs
command for running the Nashorn Javascript engine.keytool
command for manipulating Java keystores.policytool
command for editing security sandbox security policies.pack200
and unpack200
tools for packing and unpacking “pack200” file for web deployment.orbd
, rmid
, rmiregistry
and tnameserv
commands 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).
A Java Development Kit or JDK distribution includes the JRE tools, and additional tools for developing Java software. The additional tools typically include:
javac
command, which compiles Java source code (”.java”) to bytecode files (”.class”).jar
and jarsigner
- `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
- `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.