README

Java(TM) Platform, Standard Edition Runtime Environment Version 6


The Java(TM) Platform, Standard Edition Runtime Environment (JRE(TM)), excluding the JavaFX(TM) runtime, 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(TM)). The JRE installation triggers the download of the JavaFX runtime. The JavaFX runtime is also available separately, and is not part of the JRE. For information on JavaFX, and how to make changes, go to: http://java.com/javafx


=======================================================================
     Deploying Applications with the Java SE Runtime Environment
=======================================================================

When you deploy an application written in the Java programming language, your software bundle will probably consist of the following parts:

    Your own class, resource, and data files.
    The Java SE Runtime Environment.
    An installation procedure or program.

You already have the first part, of course. The remainder of this document covers the other two parts.

See also the Notes for Developers page on the Java Software website:

    here

-----------------------------------------------------------------------
Java Platform, Standard Edition Runtime Environment (JRE)
-----------------------------------------------------------------------

To run your application, a user needs the Java SE Runtime Environment..  Use and redistribution of the Java SE Runtime Environment is subject to the Oracle Binary Code License Agreement for the Java SE Platform Products.   The JavaFX runtime is only required to run applications written in the JavaFX scripting language.  You must not redistribute JavaFX runtime with your application.  Likewise, you must not redistribute pre-release or beta versions of Java SE Runtime Environment.

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.

-----------------------------------------------------------------------
Required vs. Optional Files
-----------------------------------------------------------------------

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.

-----------------------------------------------------------------------
Optional Files and Directories
-----------------------------------------------------------------------

The following files may be optionally excluded from redistributions. These files are located in the jre1.6.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 main pages should be excluded for any excluded executables (with paths listed below beginning with bin/ ,  for the Solaris(TM) Operating System and Linux).

    lib/charsets.jar
    Character conversion classes
    lib/ext/
    sunjce_provider.jar - the SunJCE provider for Java
      Cryptography APIs
    localedata.jar - contains many of the resources
      needed for non US English locales
    ldapsec.jar - contains security features supported
      by the LDAP service provider
    dnsns.jar - for the InetAddress wrapper of JNDI DNS provider
    bin/rmid
    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
    Used to obtain and cache Kerberos ticket-granting tickets
    bin/klist
    Kerberos display entries in credentials cache and keytab
    bin/ktab
    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, lib/javaws/ and lib/javaws.jar
    Java Web Start

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\jusched.exe

    bin\wsdetect.dll
    bin\NPJPI*.dll   (The filename changes in every release)
    bin\NPJava11.dll
    bin\NPJava12.dll
    bin\NPJava13.dll
    bin\NPJava14.dll
    bin\NPJava32.dll
    bin\NPOJI610.dll
    bin\RegUtils.dll
    bin\axbridge.dll
    bin\deploy.dll
    bin\jpicom.dll
    bin\javacpl.cpl
    bin\jpiexp.dll
    bin\jpinscp.dll
    bin\jpioji.dll
    bin\jpishare.dll
    lib\deploy.jar
    lib\plugin.jar
    lib\javaws.jar
    lib\javaws\messages.properties
    lib\javaws\messages_de.properties
    lib\javaws\messages_es.properties
    lib\javaws\messages_fr.properties
    lib\javaws\messages_it.properties
    lib\javaws\messages_ja.properties
    lib\javaws\messages_ko.properties
    lib\javaws\messages_sv.properties
    lib\javaws\messages_zh_CN.properties
    lib\javaws\messages_zh_HK.properties
    lib\javaws\messages_zh_TW.properties
    lib\javaws\miniSplash.jpg

-----------------------------------------------------------------------
Redistributable JDK(TM) Files
-----------------------------------------------------------------------

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 main pages should be included for any included executables (with paths listed below beginning with bin/ ,for the Solaris(TM) Operating System and Linux).

    jre/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 jre/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.

    jre/lib/audio/soundbank.gm
        This MIDI soundbank is present in the JDK, but it has
        been removed from the Java SE Runtime Environment in order to
        reduce the size of the Runtime Environment's download bundle.
        However, a soundbank file is necessary for MIDI playback, and
        therefore the JDK's soundbank.gm file may be included in
        redistributions of the Runtime Environment at the vendor's
        discretion. Several versions of enhanced MIDI soundbanks are
        available from the Java Sound web site:
        here
        These alternative soundbanks may be included in redistributions
        of the Java SE Runtime Environment.

    The javac bytecode compiler, consisting of the following files:
        bin/javac           [Solaris(TM) Operating System
                             and Linux]
        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]

    The Annotation Processing Tool, consisting of the following files:
        lib/tools.jar       [All platforms] 
        bin/apt             [Solaris(TM) Operating System
                             and Linux]
        bin/sparcv9/apt     [Solaris Operating System
                             (SPARC(R) Platform Edition)]
    bin/amd64/apt       [Solaris Operating System (AMD)]
        bin/apt.exe         [Microsoft Windows]

    lib/jconsole.jar
        The Jconsole application.  NOTE: The Jconsole application requires
        the dynamic attach mechanism.

    The dynamic attach mechanism consisting of the following files:
        lib/tools.jar       [All platforms]
        jre/lib/sparc/libattach.so
          [Solaris(TM) Operating System (SPARC(R) Platform Edition) and Linux]
        jre/lib/sparcv9/libattach.so
          [Solaris(TM) Operating System (SPARC(R) Platform Edition) and Linux]
        jre/lib/i386/libattach.so
          [Solaris(TM) Operating System (x86) and Linux]
        jre/lib/amd64/libattach.so
          [Solaris(TM) Operating System (AMD) and Linux]
        jre\bin\attach.dll  [Microsoft Windows]

    The Java Platform Debugger Architecture implementation consisting of the
    files shown in the dynamic attach section above, and the following files:
        lib/tools.jar       [All platforms]
        lib/sa-jdi.jar      [All platforms]
        jre/lib/sparc/libsaproc.so
          [Solaris(TM) Operating System (SPARC(R) Platform Edition) and Linux]
        jre/lib/sparcv9/libsaproc.so
          [Solaris(TM) Operating System (SPARC(R) Platform Edition) and Linux]
        jre/lib/i386/libsaproc.so
          [Solaris(TM) Operating System (x86) and Linux]
        jre/lib/amd64/libsaproc.so
          [Solaris(TM) Operating System (AMD) and Linux]

    jre\bin\server\
        On Microsoft Windows platforms, the JDK includes both
        the Java HotSpot(TM) 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.


-----------------------------------------------------------------------
Unlimited Strength Java Cryptography Extension
-----------------------------------------------------------------------

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

     <java-home>/lib/security/local_policy.jar
     <java-home>/lib/security/US_export_policy.jar

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.

-----------------------------------------------------------------------
The cacerts Certificates File
-----------------------------------------------------------------------

Root CA certificates may be added to or removed from the Java SE certificate file located at

    <java-home>/lib/security/cacerts

For more information, see The cacerts Certificates File section in the keytool documentation at:

http://docs.oracle.com/javase/6/docs/technotes/tools/solaris/keytool.html#cacerts

=======================================================================
Endorsed Standards Override Mechanism
=======================================================================

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 Process(SM) (JCP(SM) 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
http://www.oracle.com/technetwork/java/javase/documentation/index.html
-----------------------------------------------------------------------------------------
The Java™ Runtime Environment (JRE) is a product of Oracle.