The Java™ Platform, Standard Edition Runtime Environment (JRE) is intended for software developers and vendors to redistribute with their applications.
The Java SE Runtime Environment contains the Java virtual machine, runtime class libraries, and Java application launcher that are necessary to run programs written in the Java programming language. It is not a development environment and does not contain development tools such as compilers or debuggers. For development tools, see the Java SE Development Kit (JDK™).
When you deploy an application written in the Java programming language, your software bundle will probably consist of the following parts:
You already have the first part, of course. The remainder of this document covers the other two parts. Also see the Developers website:
To run your application, a user needs the Java SE Runtime Environment, which is freely available from Oracle. Or, you can redistribute the Java SE Runtime Environment for free with your application, according to the terms of the Oracle Binary Code License Agreement for the Java SE Platform Products.
The final step in the deployment process occurs when the software is installed on an individual user's system. Installation consists of copying software onto the user's system, then configuring the user's system to support that software. You should ensure that your installation procedure does not overwrite existing JRE installations, as they may be required by other applications.
NOTE - The license for this software does not allow the redistribution of beta and other pre-release versions.
You may reproduce and distribute the Software (and also portions of Software identified below as Redistributable), provided that you comply with the terms and conditions of the Oracle Binary Code License Agreement for the Java SE Platform Products.
The term "vendors" used here refers to licensees, developers, and independent software vendors (ISVs) who license and distribute the Java SE Runtime Environment with their programs.
Vendors must follow the terms of the Java SE Runtime Environment Binary Code License agreement.
The files that make up the Java SE Runtime Environment are divided into two categories: required and optional. Optional files may be excluded from redistributions of the Java SE Runtime Environment at the vendor's discretion.
The following section contains a list of the files and directories that may optionally be omitted from redistributions with the Java SE Runtime Environment. All files not in these lists of optional files must be included in redistributions of the runtime environment.
The following files may be optionally excluded from redistributions. These files are located in the jre1.8.0_<version> directory, where <version> is the update version number. Solaris and Linux filenames and separators are shown. Windows executables have the ".exe" suffix. Corresponding files with
_g in the name can also be excluded.
The corresponding man pages should be excluded for any excluded executables (with paths listed below beginning with bin/, for the Solaris™ Operating System and Linux).
lib/ext/ [Everything under this directory can be excluded] sunjce_provider.jar,sunec.jar, sunpkcs11.jar and sunmscapi.jar - JCA/JCE providers for Java Cryptography APIs. Some providers are not available on all OS or Architectures. The runtime environment must contain at least one implementation of each of the required Security algorithms as described in: http://docs.oracle.com/javase/8/docs/technotes/guides/ security/StandardNames.html localedata.jar - contains many of the resources needed for non US English locales dnsns.jar - for the InetAddress wrapper of JNDI DNS provider bin/rmid - [.exe, and .dll on Microsoft Windows] Java RMI Activation System Daemon bin/rmiregistry - Java Remote Object Registry bin/tnameserv - Java IDL Name Server bin/keytool - Key and Certificate Management Tool bin/kinit - [Microsoft Windows] Used to obtain and cache Kerberos ticket-granting tickets bin/klist - [Microsoft Windows] Kerberos display entries in credentials cache and keytab bin/ktab - [Microsoft Windows] Kerberos key table manager bin/policytool - Policy File Creation and Management Tool bin/orbd - Object Request Broker Daemon bin/servertool - Java IDL Server Tool bin/javaws and lib/javaws.jar - Java Web Start lib/jfr and lib/jfr.jar - Flight Recorder Files lib/oblique-fonts/* lib/desktop/* plugin/*
When redistributing the JRE on Microsoft Windows as a private application runtime (not accessible by other applications) with a custom launcher, the following files are also optional. These are libraries and executables that are used for Java support in Internet Explorer and Mozilla family browsers; these files are not needed in a private JRE redistribution.
bin\java.exe bin\javaw.exe bin\javaws.exe bin\javacpl.exe bin\jucheck.exe bin\dtplugin bin\jabswitch.exe bin\java_crw_demo.dll bin\JavaAccessBridge-32.dll bin\JavaAccessBridge.dll bin\JAWTAccessBridge-32.dll bin\JAWTAccessBridge.dll bin\WindowsAccessBridge-32.dll bin\WindowsAccessBridge.dll bin\wsdetect.dll bin\dtplugin\* bin\plugin2\* bin\deploy.dll bin\jfr.dll bin\javacpl.cpl lib\deploy.jar lib\plugin.jar lib\deploy\*
All JavaFX related files:
THIRDPARTYLICENSEREADME-JAVAFX.txt [As long as you don't include any other JavaFX related files] - JavaFX third-party license information lib/ant-javafx.jar - JavaFX packager ant tasks lib/javafx.properties - JavaFX properties file lib/jfxswt.jar JavaFX native libraries [Microsoft Windows]: bin\decora-sse.dll bin\fxplugins.dll bin\glass.dll bin\glib-lite.dll bin\gstreamer-lite.dll bin\javafx-font.dll bin\javafx_font_t2k.dll bin\javafx-iio.dll bin\jfxmedia.dll bin\jfxwebkit.dll bin\prism_common.dll bin\prism-d3d.dll bin\prism_es2.dll bin\prism_sw.dll JavaFX native libraries [Mac OS X]: lib/fxplugins.dylib lib/libdecora_sse.so lib/libdecora-sse.dylib lib/libfxplugins.so lib/libglass.dylib lib/libglib-lite.dylib lib/libgstreamer-lite.dylib lib/libjavafx_font_t2k.dylib lib/libjavafx-font.dylib lib/libjavafx-iio.dylib lib/libjfxmedia.dylib lib/libjfxwebkit.dylib lib/libprism_common.dylib lib/libprism_sw.dylib lib/libprism-es2.dylib JavaFX native libraries [Linux-i586]: lib/i386/libdecora_sse.so lib/i386/libfxplugins.so lib/i386/libglass.so lib/i386/libgstreamer-lite.so lib/i386/libjavafx_font_freetype.so lib/i386/libjavafx_font_pango.so lib/i386/libjavafx_font_t2k.so lib/i386/libjavafx-font.so lib/i386/libjavafx-iio.so lib/i386/libjfxmedia.so lib/i386/libjfxwebkit.so lib/i386/libprism_common.so lib/i386/libprism_es2.so lib/i386/libprism_sw.so JavaFX native libraries [Linux-x64]: lib/amd64/libdecora_sse.so lib/amd64/libprism_common.so lib/amd64/libprism_es2.so lib/amd64/libprism_sw.so lib/amd64/libfxplugins.so lib/amd64/libglass.so lib/amd64/libgstreamer-lite.so lib/amd64/libjavafx_font_freetype.so lib/amd64/libjavafx_font_pango.so lib/amd64/libjavafx_font_t2k.so lib/amd64/libjavafx-font.so lib/amd64/libjavafx-iio.so lib/amd64/libjfxmedia.so lib/amd64/libjfxwebkit.so lib/amd64/libprism-es2.so
The limited set of files from the Java SE Development Kit (JDK) listed below may be included in vendor redistributions of the Java SE Runtime Environment. All paths are relative to the top-level directory of the JDK. The corresponding man pages should be included for any included executables (with paths listed below beginning with bin/ , for the Solaris™ Operating System and Linux).
lib/cmm/PYCC.pf Color profile; This file is required only if one wishes to convert between the PYCC color space and another color space. All .ttf font files in the lib/fonts directory Note that the LucidaSansRegular.ttf font is already contained in the Java SE Runtime Environment, so there is no need to bring that file over from the JDK. The javac bytecode compiler, consisting of the following files: bin/javac [Solaris™ Operating System, Linux and OS X] bin/sparcv9/javac [Solaris Operating System (SPARC(R) Platform Edition)] bin/amd64/javac [Solaris Operating System (AMD)] bin\javac.exe [Microsoft Windows] lib/tools.jar [All platforms] lib/jconsole.jar The Jconsole application. bin\server\ On Microsoft Windows platforms, the JDK includes both the Java HotSpot™ Server VM and Java HotSpot Client VM. However, the Java SE Runtime Environment for Microsoft Windows platforms includes only the Java HotSpot Client VM. Those wishing to use the Java HotSpot Server VM with the Java SE Runtime Environment may copy the JDK's jre\bin\server folder to a bin\server directory in the Java SE Runtime Environment. Software vendors may redistribute the Java HotSpot Server VM with their redistributions of the Java SE Runtime Environment.
Due to import control restrictions for some countries, the Java Cryptography Extension (JCE) policy files shipped with the Java SE Development Kit and the Java SE Runtime Environment allow strong but limited cryptography to be used. These files are located at:
where <java-home> is the jre directory of the JDK or the top-level directory of the Java SE Runtime Environment.
An unlimited strength version of these files indicating no restrictions on cryptographic strengths is available on the JDK web site for those living in eligible countries. Those living in eligible countries may download the unlimited strength version and replace the strong cryptography jar files with the unlimited strength files.
Root CA certificates may be added to or removed from the Java SE certificate file located at:
For more information, see "The cacerts Certificates File" section in the keytool documentation at:
From time to time it is necessary to update the Java platform in order to incorporate newer versions of standards that are created outside of the Java Community ProcessSM (JCPSM http://www.jcp.org/) (Endorsed Standards), or in order to update the version of a technology included in the platform to correspond to a later standalone version of that technology (Standalone Technologies).
The Endorsed Standards Override Mechanism provides a means whereby later versions of classes and interfaces that implement Endorsed Standards or Standalone Technologies may be incorporated into the Java Platform.
For more information on the Endorsed Standards Override Mechanism, including the list of platform packages that it may be used to override, see: