For use with the Operating System Distributor License for Java (DLJ)
JDKTM 5.0
Thank you for downloading this release of the JavaTM 2 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 Java platform. These tools are designed to be used from the command line. Except for the appletviewer, these tools do not provide a graphical user interface.
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:
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 Java 2 Platform Standard Edition Documentation contains API specifications, feature descriptions, developer guides, reference pages for JDK 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 Java 2 Platform Standard Edition API Specification This provides brief descriptions of the API with an emphasis on specifications, not on code examples.
See the Release Notes on the Java Software web site for additional information pertaining to this release. The on-line release notes will be updated as needed, so you should check it occasionally for the latest information.
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 Java 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 Parade Web Page on the Java Developer Connection 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://java.sun.com/webapps/bugreport
You can send feedback to the J2SE documentation team. You can also send comments directly to Java Software engineering team email addresses.
Note - You should not seek technical support from Bug Parade 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 JDK. For details on the files and directories, see JDK File Structure portion of the J2SE documentation.
bin
subdirectory.) Tools and utilities that will help you
develop, execute, debug, and document programs written in the Java
programming language. For further information, see the tool
documentation.jre
subdirectory.) An implementation of the J2SE runtime
environment for use by the JDK. The runtime environment includes a
Java virtual machine, class libraries, and other files that support
the execution of programs written in the Java 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 Java platform. These include examples that use
Swing and other Java Foundation Classes, and the Java Platform
Debugger Architecture.include
subdirectory.) Header files that support
native-code programming using the Java Native
Interface, the JVMTM
Tool Interface, and other functionality of the Java 2
Platform.src.zip
.) Java programming language source files for all
classes that make up the Java 2 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 Java 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 J2SE Runtime Environment allows you to run applications written in the Java programming language. Like the JDK, it contains the Java virtual machine, classes comprising the Java 2 Platform API, and supporting files. Unlike the JDK, it does not contain development tools such as compilers and debuggers.
The J2SE Runtime Environment is included within this JDK bundle.
The DLJ allows for redistribution of the J2SE Runtime Environment with your Operating System, in accordance with its conditions and restrictions. See the section on redistributing the JRE in the Redistribution section below.
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 J2SE Development Kit 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 J2SE Development Kit (JDK) 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.5.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 name can also be excluded.
The limited set of files from the JDK listed below may be included in vendor redistributions of the J2SE Runtime Environment. They cannot be redistributed separately, and must accompany a JRE distribution. All paths are relative to the top-level directory of the JDK.
This bundle contains a
Java 2 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. Once you have the full
JRE file set, you can follow the instructions in the README file contained
within the jre/
directory if you wish to make any further customizations to
the JRE.
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/kinit.1 ja_JP.eucJP/man1/klist.1 ja_JP.eucJP/man1/ktab.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/kinit.1 man1/klist.1 man1/ktab.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- Insure that the following soft links are in place. Note all of these links should already exist in the
jre/
directory except as noted.
- Linux
javaws/javaws -> ../bin/javaws lib/i386/client/libjsig.so -> ../libjsig.so lib/i386/server/libjsig.so -> ../libjsig.so man/ja -> ja_JP.eucJP (New! must be added)- OpenSolaris
javaws/javaws -> ../bin/javaws lib/sparc/client/libjsig.so -> ../libjsig.so lib/sparc/libjdgaSUNWafb.so -> libjdgaSUNWffb.so lib/sparc/libjvm.so -> client/libjvm.so lib/sparc/server/libjsig.so -> ../libjsig.so
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.
Due to import control restrictions for some countries, the Java Cryptography Extension (JCE) policy files shipped with the J2SE Development Kit and the J2SE 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 J2SE 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.
An endorsed standard is a Java API defined through a standards process other than the Java Community ProcessSM (JCPSM). Because endorsed standards are defined outside the JCP, it is anticipated that such standards will be revised between releases of the Java 2 Platform. In order to take advantage of new revisions to endorsed standards, developers and software vendors may use the Endorsed Standards Override Mechanism to provide newer versions of an endorsed standard than those included in the Java 2 Platform as released by Sun Microsystems.
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/j2se/1.5.0/docs/guide/standards/
Classes in the packages listed on that web page may be replaced only by classes implementing a more recent version of the API as defined by the appropriate standards body.
In addition to the packages listed in the document at the above URL, which are part of the Java 2 Platform Standard Edition (J2SETM) specification, redistributors of Sun's J2SE Reference Implementation are allowed to override classes whose sole purpose is to implement the functionality provided by public APIs defined in these Endorsed Standards packages. Redistributors may also override classes in the org.w3c.dom.* packages, or other classes whose sole purpose is to implement these APIs.
Root CA certificates may be added to or removed from the J2SE certificate
file located at <java-home>/lib/security/cacerts
. For
more information, see
The cacerts Certificates File section in the keytool documentation.
For additional information, refer to these Sun Microsystems pages on the World Wide Web:
The J2SE Development Kit 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.