Hi !
Featured games (91)
games approved by the League of Dukes
Games in Showcase (757)
Games in Android Showcase (229)
games submitted by our members
Games in WIP (844)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
    Home     Help   Search   Login   Register   
Pages: [1]
  ignore  |  Print  
  CD re-distribution of JDK  (Read 3830 times)
0 Members and 1 Guest are viewing this topic.
Offline blahblahblahh

JGO Coder

Medals: 1

« Posted 2003-07-29 20:37:27 »

I'm authoring one of the chapters for Game Programming Gems 4, and I *wanted* to use Java for the examples. All code comes on an accompanying CD, in a special case on the inside cover of the book (like with the previous 3).

Few of the readers will have JDK's. Very few are likely to have the latest version - and my examples absolutely require 1.4.2 on some platforms, due to bugfixes. 1.4.2 went live very recently, hence I want to get it on that CD. The editor and publishers are provisionally happy with this, but want to know if there are any distribution / licensing agreements they need to sign.

Trouble is, I can't find anyone who knows about this stuff. It seems the Sun GTG has disappeared already. I've been trying to get hold of Chris [spaceghost] (and even tried Jeff as well) to get an answer to this urgently before the book goes to the publishers. No response for well over a week. Perhaps you lot aren't checking email? There isn't a contact address anywhere on JGO that I can find (save for what's in the profiles), but I've had email conversations with you on these same addresses before!

The problem is that I've only got days left until they start printing etc.

I actually assumed that the GTG might have some interest in this for promotional reasons - getting the JDK out with a book as widely distributed in the games industry as GPG4 would seem to me to be a great achievement. Apparently not.

But if anyone knows what to do in this kind of situation (re-dist'ing the JDK with a book), or could even point me to any official Sun page on the subject, I'd be grateful. If I can't get anything done in time, I'll have to rewrite all the code in something else, which is not only a sad indictment of java, but also a major PITA.

malloc will be first against the wall when the revolution comes...
Offline AndersDahlberg

Junior Devvie

« Reply #1 - Posted 2003-07-29 20:49:51 »

Well, judging from the following:

Software - Beginning with version 1.4.1, the Java 2 SDK and JRE software can be redistributed provided it is bundled with a value-added software program or published with a book or magazine, subject to the terms and conditions of the license. Such redistribution rights of the software applying specifically to publishers are addressed in a specific paragraph labeled "Distribution by Publishers" of the software license for the J2SE platforms. These redistribution terms do not apply to early access versions (such as JRE v1.4.1 Beta), or to any versions prior to 1.4.1, which cannot be redistributed. The same rules apply to those in academic institutions. Some information is available at the Legal and Licensing FAQ.

License for a 1.4.2 sdk download

C. License to Distribute Redistributables. Subject to the terms and conditions of this Agreement, including but not limited to the Java Technology Restrictions of these Supplemental Terms, Sun grants you a non-exclusive, non-transferable, limited license without fees to reproduce and distribute those files specifically identified as redistributable in the Software "README" file ("Redistributables") provided that: (i) you distribute the Redistributables complete and unmodified (unless otherwise specified in the applicable README file), and only bundled as part of Programs, (ii) you do not distribute additional software intended to supersede any component(s) of the Redistributables (unless otherwise specified in the applicable README file), (iii) you do not remove or alter any proprietary legends or notices contained in or on the Redistributables, (iv) you only distribute the Redistributables pursuant to a license agreement that protects Sun's interests consistent with the terms contained in the Agreement, (v) you agree to defend and indemnify Sun and its licensors from and against any damages, costs, liabilities, settlement amounts and/or expenses (including attorneys' fees) incurred in connection with any claim, lawsuit or action by any third party that arises or results from the use or distribution of any and all Programs and/or Software.

and readme.html


     The term "vendors" used here refers to licensees, developers,
     and independent software vendors (ISVs) who license and
     distribute the Java 2 Runtime Environment with their programs.
     Vendors must follow the terms of the Java 2 SDK, Standard
     Edition, Binary Code License agreement.
     Required vs. Optional Files

     The files that make up the Java 2 SDK, Standard Edition, are
     divided into two categories: required and optional. Optional
     files may be excluded from redistributions of the Java 2 SDK
     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 Java 2 SDK. All files not
     in these lists of optional files must be included in
     redistributions of the Java 2 SDK.

     Optional Files and Directories

     The following files may be optionally excluded from

           Character conversion classes
           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
     bin/rmid and jre/bin/rmid
           Java RMI Activation System Daemon
     bin/rmiregistry and jre/bin/rmiregistry
           Java Remote Object Registry
     bin/tnameserv and jre/bin/tnameserv
           Java IDL Name Server
     bin/keytool and jre/bin/keytool
           Key and Certificate Management Tool
     bin/kinit and jre/bin/kinit
           Used to obtain and cache Kerberos ticket-granting tickets
     bin/klist and jre/bin/klist
           Kerberos display entries in credentials cache and keytab
     bin/ktab and jre/bin/ktab
           Kerberos key table manager
     bin/policytool and jre/bin/policytool
           Policy File Creation and Management Tool
     bin/orbd and jre/bin/orbd
           Object Request Broker Daemon
     bin/servertool and jre/bin/servertool
           Java IDL Server Tool
           Archive of source files

     In addition, the Java Web Start product may be excluded from
     redistributions.  The Java Web Start product is contained in
     a file named,,,
     or javaws-1_2-windows-i586-i.exe, depending on the platform.

     Unlimited Strength Java Cryptography Extension

     Due to import control restrictions for some countries, the
     Java Cryptography Extension (JCE) policy files shipped with
     the Java 2 SDK, Standard Edition and the Java 2 Runtime
     Environment allow strong but limited cryptography to be
     used.  These files are located at


     where <java-home> is the jre directory of the Java 2
     SDK or the top-level directory of the Java 2 Runtime

     An unlimited strength version of these files indicating
     no restrictions on cryptographic strengths is available
     on the Java 2 SDK 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.

     Endorsed Standards Override Mechanism

     An endorsed standard is a Java API defined through a standards
     process other than the Java Community Process(SM) (JCP(SM)).
     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


     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
     (J2SE(TM)) 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.

I would guess that a redistribution of a 1.4.2 sdk on a cd is legal if you follow the above (IANAL Wink

EDIT: and I believe you can disregard the readme.html file as it only deals with vendors distributing a vm with their program.
Offline AndersDahlberg

Junior Devvie

« Reply #2 - Posted 2003-07-29 20:52:11 »

Missed the most important bit:

E. Distribution by Publishers. This section pertains to your distribution of the Software with your printed book or magazine (as those terms are commonly used in the industry) relating to Java technology ("Publication"). Subject to and conditioned upon your compliance with the restrictions and obligations contained in the Agreement, in addition to the license granted in Paragraph 1 above, Sun hereby grants to you a non-exclusive, nontransferable limited right to reproduce complete and unmodified copies of the Software on electronic media (the "Media") for the sole purpose of inclusion and distribution with your Publication(s), subject to the following terms: (i) You may not distribute the Software on a stand-alone basis; it must be distributed with your Publication(s); (ii) You are responsible for downloading the Software from the applicable Sun web site; (iii) You must refer to the Software as JavaTM 2 Software Development Kit, Standard Edition, Version 1.4.2; (iv) The Software must be reproduced in its entirety and without any modification whatsoever (including, without limitation, the Binary Code License and Supplemental License Terms accompanying the Software and proprietary rights notices contained in the Software); (v) The Media label shall include the following information: Copyright 2003, Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Sun, Sun Microsystems, the Sun logo, Solaris, Java, the Java Coffee Cup logo, J2SE , and all trademarks and logos based on Java are trademarks or registered trademarks of Sun Microsystems, Inc. in the U.S. and other countries. This information must be placed on the Media label in such a manner as to only apply to the Sun Software; (vi) You must clearly identify the Software as Sun's product on the Media holder or Media label, and you may not state or imply that Sun is responsible for any third-party software contained on the Media; (vii) You may not include any third party software on the Media which is intended to be a replacement or substitute for the Software; (viii) You shall indemnify Sun for all damages arising from your failure to comply with the requirements of this Agreement. In addition, you shall defend, at your expense, any and all claims brought against Sun by third parties, and shall pay all damages awarded by a court of competent jurisdiction, or such settlement amount negotiated by you, arising out of or in connection with your use, reproduction or distribution of the Software and/or the Publication. Your obligation to provide indemnification under this section shall arise provided that Sun: (i) provides you prompt notice of the claim; (ii) gives you sole control of the defense and settlement of the claim; (iii) provides you, at your expense, with all available information, assistance and authority to defend; and (iv) has not compromised or settled such claim without your prior written consent; and (ix) You shall provide Sun with a written notice for each Publication; such notice shall include the following information: (1) title of Publication, (2) author(s), (3) date of Publication, and (4) ISBN or ISSN numbers. Such notice shall be sent to Sun Microsystems, Inc., 4150 Network Circle, M/S USCA12-110, Santa Clara, California 95054, U.S.A , Attention: Contracts Administration.

But I reach the same conclusion Smiley
Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline blahblahblahh

JGO Coder

Medals: 1

« Reply #3 - Posted 2003-07-29 22:11:45 »

Thanks very much guys. I may die of boredom reading through it all, but it should certainly be just what the publishers need.

Any thoughts on the promotional value to the java platform of things like this?

malloc will be first against the wall when the revolution comes...
Offline ChrisM

JGO Knight

Medals: 20
Projects: 1
Exp: 16 years


« Reply #4 - Posted 2003-07-29 23:32:39 »

Where have you been e-mailing me?  I have not gotten any of your e-mails, sorry.

The short answer is, you can distribute the JRE, in it's entirety, without any problem.  The issue comes in when people start trying to break up the packaging.  That's a no-no.

Hope this helps!


P.S.  My bad.  I needed to update my e-mail address in my profile.  Sorry!

Offline Herkules

Senior Devvie

Friendly fire isn't friendly!

« Reply #5 - Posted 2003-07-30 06:02:32 »

JRE - yes. What about the JDK? Same rules?

HARDCODE    --     DRTS/FlyingGuns/JPilot/JXInput  --    skype me: joerg.plewe
Offline AndersDahlberg

Junior Devvie

« Reply #6 - Posted 2003-07-30 11:17:17 »

Software - Beginning with version 1.4.1, the Java 2 SDK and JRE software can be redistributed provided it is ---

I guess the same rules apply Smiley
Offline Jeff

JGO Coder

Got any cats?

« Reply #7 - Posted 2003-08-02 03:32:45 »

Yep, I didn't see any email either, sorry.

What email address have you been using?


Got a question about Java and game programming?  Just new to the Java Game Development Community?  Try my FAQ.  Its likely you'll learn something!
Offline blahblahblahh

JGO Coder

Medals: 1

« Reply #8 - Posted 2003-08-02 12:39:13 »

Yep, I didn't see any email either, sorry.

What email address have you been using?


(copy/pasted from the saved copy of the email I sent:)

Which happens to be the same one as in your profile:

And is the one I had a reply from from you before. Is it possible that my email got lost in transit? As far as I know, we've not had any problems with emails not arriving before (I send about 10-40 emails a day), and there's no filtering on our mailserver, so ... ?

malloc will be first against the wall when the revolution comes...
8: Undefined index: online
File: /home/jgo/public_html/Themes/default/Display.template.php (main sub template - eval?)
Line: 161