For use with the Operating System Distributor License for Java (DLJ)
JDKTM 6
Thank you for downloading this release of the JavaTM Platform, Standard Edition Development Kit (JDKTM). The JDK is a development environment for building applications, applets, and components using the Java programming language.
The JDK includes tools useful for developing and testing programs written in the Java programming language and running on the JavaTM platform.
This software bundle was created specifically for use with the Operating System Distributor License for Java (DLJ) and this README file contains instructions to support distribution under that license. Note that other software bundles of the JDK and the Java Runtime Environment (JRE) are available and incorporate the Binary Code License Agreement (BCL). The redistribution requirements are different in these two different licenses, and the README files are also different. Please ensure that you are using the README file that corresponds to the package you want to distribute and that meets your distribution needs.
System requirements, installation instructions and troubleshooting tips are located on the Java Software web site at:
JDK 6 Installation Instructions
The above mentioned instructions are intended for use with a standard JDK bundle from Sun Microsystems and may not be appropriate for JDK bundles which have been modified for use with different Linux and OpenSolaris operating system distributions.
The on-line JavaTM Platform, Standard Edition (Java SE) Documentation contains API specifications, feature descriptions, developer guides, reference pages for JDKTM tools and utilities, demos, and links to related information. This documentation is also available in a download bundle which you can install on your machine. To obtain the documentation bundle, see the download page. For API documentation, refer to the The JavaTM Platform, Standard Edition API Specification This provides brief descriptions of the API with an emphasis on specifications, not on code examples.
See the Java SE 6 Release Notes on the Java Software web site for additional information pertaining to this release. Please check the on-line release notes occasionally for the latest information as they will be updated as needed.
See Compatibility with Previous Releases on the Java Software web site for the list of known compatibility issues. Every effort has been made to support programs written for previous versions of the JavaTM platform. Although some incompatible changes were necessary, most software should migrate to the current version with no reprogramming. Any failure to do so is considered a bug, except for a small number of cases where compatibility was deliberately broken, as described on our compatibility web page. Some compatibility-breaking changes were required to close potential security holes or to fix implementation or design bugs.
The Bug Database web site lets you search for and examine existing bug reports, submit your own bug reports, and tell us which bug fixes matter most to you. To directly submit a bug or request a feature, fill out this form:
http://bugs.sun.com/services/bugreport/index.jsp
You can send feedback to the Java SE documentation team. You can also send comments directly to Java Software engineering team email addresses.
Note - Please do not seek technical support through the Bug Database or our development teams. For support options, see Support and Services on the Java Software web site.
This section contains a general summary of the files and directories in the JDKTM. For details on the files and directories, see the JDK File Structure section of the Java SE documentation for your platform.
bin/
subdirectory) Tools and utilities that
will help you develop, execute, debug, and document programs written
in the JavaTM programming language.
For further information, see the tool
documentation.jre/
subdirectory) An implementation of the
Java Runtime Environment (JRETM) for
use by the JDK. The JRE includes a JavaTM Virtual Machine (JVMTM), class libraries, and other files that support
the execution of programs written in the JavaTM programming language.lib/
subdirectory) Additional class libraries
and support files required by the development tools.demo/
subdirectory) Examples, with source
code, of programming for the JavaTM
platform. These include examples that use Swing and other
JavaTM Foundation Classes, and the
JavaTM Platform Debugger
Architecture.sample/
subdirectory) Samples, with source
code, of programming for certain Java API's.include/
subdirectory) Header files that
support native-code programming using the Java Native
Interface, the JVMTM
Tool Interface, and other functionality of the
JavaTM platform.src.zip
) JavaTM
programming language source files for all classes that make up the
Java core API (that is, sources files for the java.*, javax.* and
some org.* packages, but not for com.sun.* packages). This source code
is provided for informational purposes only, to help developers learn
and use the JavaTM programming
language. These files do not include platform-specific implementation
code and cannot be used to rebuild the class libraries. To extract
these file, use any common zip utility. Or, you may use the Jar
utility in the JDK's bin/
directory:jar xvf src.zip
The JavaTM Runtime Environment (JRETM) allows you to run applications written in the JavaTM programming language. Like the JDKTM, it contains the JavaTM Virtual Machine (JVMTM), classes comprising the JavaTM platform API, and supporting files. Unlike the JDK, it does not contain development tools such as compilers and debuggers.
The Java Runtime Environment (JRE) is included within this JDK bundle.
The DLJ allows for redistribution of just the JavaTM Runtime Environment with your Operating System, in accordance with its conditions and restrictions. If you wish to redistribute only the JRE, rather than the JDK, follow the instructions in the section below Redistributing the Java Runtime Environment (JRE). You will create a set of files that corresponds to the JRE, which may then be modified according to the guidelines contained in the JRE README.
NOTE - The license for this software does not allow the redistribution of beta and other pre-release versions.
Reproduction and distribution of the Software (and also portions of Software identified below as Redistributable) is subject to the terms and conditions of the Operating System Distributor License for Java (DLJ) and the obligations, restrictions, and exceptions set forth below.
The term "vendors" used here refers to licensees, developers, and independent software vendors (ISVs) who license and distribute the JavaTM Development Kit (JDKTM) with their Operating System.
Vendors must follow the terms of the Operating System Distributor License for Java. More information about how to successfully package and check your distribution of the JDK can be found at https://jdk-distros.dev.java.net.
The files that make up the JavaTM Development Kit (JDKTM) are divided into two categories: required and optional. Optional files may be excluded from redistributions of the JDK at the vendor's discretion.
The following section contains a list of the files and directories that may optionally be omitted from redistributions of the JDK. All files not in these lists of optional files must be included in redistributions of the JDK.
The following files may be optionally excluded from redistributions. These files are located in the jdk1.6.0_<version> directory, where <version> is the update version number. SolarisTM and Linux filenames and separators are shown. 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 withbin/
).
jre/lib/charsets.jar
- Character conversion classes
jre/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 providerbin/rmid
andjre/bin/rmid
- Java RMI Activation System Daemon
bin/rmiregistry
andjre/bin/rmiregistry
- Java Remote Object Registry
bin/tnameserv
andjre/bin/tnameserv
- Java IDL Name Server
bin/keytool
andjre/bin/keytool
- Key and Certificate Management Tool
bin/policytool
andjre/bin/policytool
- Policy File Creation and Management Tool
bin/orbd
andjre/bin/orbd
- Object Request Broker Daemon
bin/servertool
andjre/bin/servertool
- Java IDL Server Tool
bin/javaws
,jre/bin/javaws
,jre/lib/javaws/
andjre/lib/javaws.jar
- Java Web Start
db/
- JavaTMDB, Sun Microsystems's distribution of the Apache Derby database technology.
demo/
- Demo Applets and Applications
include/
- Header files that support native-code programming
sample/
- Sample Code
src.zip
- Archive of source files
The limited set of files and directories from the JDK listed below may be
included in vendor redistributions of the JavaTM Runtime Environment (JRETM). They cannot be redistributed separately, and must
accompany a JRE distribution. 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/
).
jre/lib/cmm/PYCC.pf
.ttf
font files in the
jre/lib/fonts/
directory.jre/lib/audio/soundbank.gm
soundbank.gm
file may be included in
redistributions of the JRE at the vendor's discretion. Several
versions of enhanced MIDI soundbanks are available from the Java Sound
web site: http://java.sun.com/products/java-media/sound/.
These alternative soundbanks may be included in redistributions of the
JRE.bin/javac
[SolarisTM Operating System and Linux]bin/sparcv9/javac
[SolarisTM Operating System (SPARC(R) Platform Edition)]bin/amd64/javac
[SolarisTM Operating System (AMD)]lib/tools.jar
[All platforms]bin/apt
[SolarisTM
Operating System and Linux]bin/sparcv9/apt
[SolarisTM Operating System (SPARC(R) Platform Edition)]bin/amd64/apt
[SolarisTM Operating System (AMD)]lib/jconsole.jar
In order to conform with the guidelines of your OS distribution, you may move files contained within the JDK distribution to locations outside of the Java directory hierarchy which is represented by the top-level directory of the JDK as long as you meet the following requirements: you must create symbolic links at the standard location for each file within the Java directory hierarchy pointing its new location; the resulting installation must run properly on your operating system.
The limited set of files from the JDK listed below may be modified in Operating System Distributions for the purpose of configuring the Software to work properly with your Operating System Distribution (These paths are all relative to <java-home> where <java-home> is the jre directory of the JDK or the top-level directory of the JRE):
lib/<arch>/jvm.cfg
(where <arch> is i386, amd64, sparc or sparcv9)
Please refer to: http://java.sun.com/docs/hotspot/PerformanceFAQ.html#9lib/security/cacerts
Please see the section below The cacerts Certificates Filelib/security/java.security
Please refer to: http://java.sun.com/javase/6/docs/technotes/guides/security/lib/security/java.policy
Please refer to: http://java.sun.com/javase/6/docs/technotes/guides/security/lib/fontconfig.properties
Please refer to: http://java.sun.com/javase/6/docs/technotes/guides/intl/fontconfig.htmllib/sound.properties
Please refer to: http://java.sun.com/javase/6/docs/technotes/guides/sound/programmer_guide/contents.htmllib/psfontj2d.properties
(Note: relocation only)lib/net.properties
Please refer to: http://java.sun.com/javase/6/docs/technotes/guides/net/proxies.htmllib/logging.properties
Please refer to: http://java.sun.com/javase/6/docs/technotes/guides/logging/index.html- lib/flavormap.properties
Please refer to: http://java.sun.com/javase/6/docs/technotes/guides/dragndrop/spec/dnd1.htmllib/content-types.properties
Please refer to: http://java.sun.com/javase/6/docs/api/java/net/URLConnection.htmllib/deployment.config
(Note: this file is not present by default)
Please refer to: http://java.sun.com/javase/6/docs/technotes/guides/deployment/deployment-guide/properties.html
This bundle contains a JavaTM Platform, Standard Edition Runtime Environment (JRE) which may be distributed under the terms of the Operating System Distributor License for Java (DLJ). If you wish to distribute the JRE rather than the JDK, follow these instructions to create the standard set of JRE files.
Instructions for creating a JRE file set:
- Start with all the files and directories found in the
jre/
directory- Remove the file which matches
lib/*/libsaproc.so
(the Serviceability Agent machine dependent library)- Create a
man/
directory and copy the following man pages from the JDKman/
directory into this directory (preserving the intermediate directories):
- Linux
ja_JP.eucJP/man1/java.1 ja_JP.eucJP/man1/javaws.1 ja_JP.eucJP/man1/keytool.1 ja_JP.eucJP/man1/orbd.1 ja_JP.eucJP/man1/pack200.1 ja_JP.eucJP/man1/policytool.1 ja_JP.eucJP/man1/rmid.1 ja_JP.eucJP/man1/rmiregistry.1 ja_JP.eucJP/man1/servertool.1 ja_JP.eucJP/man1/tnameserv.1 ja_JP.eucJP/man1/unpack200.1 man1/java.1 man1/javaws.1 man1/keytool.1 man1/orbd.1 man1/pack200.1 man1/policytool.1 man1/rmid.1 man1/rmiregistry.1 man1/servertool.1 man1/tnameserv.1 man1/unpack200.1- OpenSolaris
ja_JP.PCK/sman1/java.1 ja_JP.PCK/sman1/javaman.ent ja_JP.PCK/sman1/javaws.1 ja_JP.PCK/sman1/keytool.1 ja_JP.PCK/sman1/orbd.1 ja_JP.PCK/sman1/pack200.1 ja_JP.PCK/sman1/policytool.1 ja_JP.PCK/sman1/rmid.1 ja_JP.PCK/sman1/rmiregistry.1 ja_JP.PCK/sman1/servertool.1 ja_JP.PCK/sman1/tnameserv.1 ja_JP.PCK/sman1/unpack200.1 ja_JP.UTF-8/sman1/java.1 ja_JP.UTF-8/sman1/javaman.ent ja_JP.UTF-8/sman1/javaws.1 ja_JP.UTF-8/sman1/keytool.1 ja_JP.UTF-8/sman1/orbd.1 ja_JP.UTF-8/sman1/pack200.1 ja_JP.UTF-8/sman1/policytool.1 ja_JP.UTF-8/sman1/rmid.1 ja_JP.UTF-8/sman1/rmiregistry.1 ja_JP.UTF-8/sman1/servertool.1 ja_JP.UTF-8/sman1/tnameserv.1 ja_JP.UTF-8/sman1/unpack200.1 ja/sman1/java.1 ja/sman1/javaman.ent ja/sman1/javaws.1 ja/sman1/keytool.1 ja/sman1/orbd.1 ja/sman1/pack200.1 ja/sman1/policytool.1 ja/sman1/rmid.1 ja/sman1/rmiregistry.1 ja/sman1/servertool.1 ja/sman1/tnameserv.1 ja/sman1/unpack200.1 sman1/java.1 sman1/javaman.ent sman1/javaws.1 sman1/keytool.1 sman1/orbd.1 sman1/pack200.1 sman1/policytool.1 sman1/rmid.1 sman1/rmiregistry.1 sman1/servertool.1 sman1/tnameserv.1 sman1/unpack200.1- The manual pages should be available in the Operating System specific location and format (e.g. compressed format) such that when a given executable program from the JRE or JDK bin/ directory is available to users that the corresponding man page is also available.
The resulting set of files is a complete JRE file set. Please note that some of the jar files in the
lib/
directory contain debug and compile attributes and therefore may not be identical in size to their counterparts in a stand alone JRE distribution. The slightly larger jar files are functionally equivalent.
Redistributors are encouraged to provide the JDK in the native distribution packaging format and repository mechanism. The JDK may be split into multiple packages (for example, architecture independent and architecture dependent) with interdependencies as long as installing the software (using conventional administration commands or documentation provided by the distributor) results in a JDK installation that adheres to the requirements in this README.
For example: optional files for the JDK may be included in a separate, optional package when installing the JDK. In addition the JDK package(s) may depend upon the JRE package(s) as long as the JRE can be installed such that the resulting installation adheres to the JRE README.
Due to import control restrictions for some countries, the Java Cryptography Extension (JCE) policy files shipped with the JDK and the JRE 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 thejre
directory of the JDK or the top-level directory of the JRE.
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
<java-home>/lib/security/cacerts
For more information, see The cacerts Certificates File section in the keytool documentation.
We intend to regularly revise this README to be more precise about how to redistribute the JDK. For questions about redistribution which are not answered in the README please post a question in the jdk-distros forum:
http://forums.java.net/jive/forum.jspa?forumID=94
or send e-mail to
DLJfeedback@sun.com
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
http://java.sun.com/javase/6/docs/technotes/guides/standards/
For additional information, refer to these Sun Microsystems pages on the World Wide Web:
The JavaTM Development
Kit (JDKTM) is a product of Sun
MicrosystemsTM, Inc.
Copyright © 2006 Sun Microsystems, Inc.
4150 Network Circle, Santa Clara, California 95054, U.S.A.
All rights reserved.