Java SE Development Model

Many developers, one platform

Stay up to date - forums, blogs, newsletters, user groups, and a bug database
»  Connect to the JDK community

Java SE Development Model


The Participation Age is here, today, for the Java platform. Beginning with the Java SE 6 release, Sun has embarked on an initiative to make the development of the JDK more transparent and create opportunities for collaboration and early feedback from the worldwide developer community. With this initiative, code-named "Project Peabody" within Sun, developers can directly contribute to the implementation of the JDK and have a hand in improving Java technology.

Project Peabody includes the following:

  • Regular snapshots of the latest pre-release builds
  • Licenses a non-lawyer can understand
  • A lightweight process for contributing code for integration
  • Community participation and dialogue with Sun engineers

This initiative brings the dynamic innovation of open community development to the Java SE platform, while maintaining and strengthening the cross-platform compatibility promise that powers Java technology's adoption and success across the IT spectrum.

Contents
 

 

Source and Binary Snapshots

 

Both the source and binary code for the current engineering build of the JDK are available for developers to understand and evaluate. Periodically, Sun takes a "snapshot" of the development tree and posts the same code that Sun engineers are actively developing to the JDK Community site on java.net. With this code, you can do the following:

  • Examine the source code, understand what's "under the covers," and better use the platform's features in building and optimizing your own applications.
  • Test applications against the latest pre-release JDK under an evaluation license to assess compatibility with prior versions, and identify any issues very early in the process.

Easy source and binary snapshot access are a critical part of any community development effort. We've made it easy to get involved - see for yourself.


 

Licenses

 

Sun has created three new licenses under which community members can participate in Project Peabody. These licenses are both more liberal and more easily understood by non-lawyers than earlier licenses for Java technology.

The Java Research License, or JRL, is a simple two-page license that you can click through online to gain access to the source code for Java SE 6. It replaces the "research" portion of the Sun community Source License (SCSL) under which previous versions of the JDK source code were made available. This license is for anyone wanting to get involved: academics and researchers, individual developers wanting to contribute, and those curious about the technologies underlying the JDK. With the JRL, you aren't required to be "compatible" - in fact, you're encouraged to try out something new, experiment with implementations, alternative approaches, whatever. The license grants very liberal use of the code for research purposes.

And just by looking at Sun's Java technology source code you are not "tainted" - the JRL includes a special "residual knowledge" clause that spells out how researchers and developers are free to view code under the JRL and then work on other projects, including non-Sun open-source efforts, without concern that they have been contaminated in some way.

If you want to contribute code back to the JDK community, there is one additional license that makes it possible for Sun to accept your contribution. The Sun Contribution Agreement is a one-page simple agreement that grants to Sun joint copyright and patent grant on contributions. With this agreement, you retain ownership and all rights to your code. This contribution agreement is good for all Sun-sponsored community development initiatives such as OpenSolaris and GlassFish, along with the JDK Community.

The Java Distribution License, or JDL, is Sun's new commercial use and distribution license (FAQ also available). This license is meant as a successor to the earlier Sun Community Source License (SCSL), but it is shorter, simpler, and easier to read. Since it lets you redistribute the JDK, you're required to pass the standard Java SE compatibility requirements to ensure that your implementation is compatible. It applies to currently released versions only of the JDK.

The Java Internal Use License, or JIUL (pronounced "jewel") is all about peace of mind for enterprises using Java SE technology for critical needs. One hallmark of open community development is the ability to fix bugs and performance problems affecting your deployments. With the JIUL, you can use the source code for the current release of Java SE technology to deploy your own bug fixes within your four walls and overcome thorny problems that can't be solved any other way. Under this license you are expected to make reasonable professional efforts to remain compatible, but are not required to set up and pass the compatibility test suite.

With these licenses, we're bringing many of the advantages of the open-source development model to core Java technology, without weakening the cross-platform compatibility promise at the heart of the Java platform's market success.


 

Contribution Process

 

So you're ready to get involved? Contributing to the JDK is straightforward and hassle-free. Just do the following:

  • Click-through the JRL to become a researcher in the JDK Community on java.net.
  • Print, sign, and fax back the Sun Contributor Agreement.
  • Get started by downloading and setting up your build environment.
  • Pick a simple, self-contained fix to start, and get familiar with the submittal process.
  • Work with a Sun engineer to test, validate, and integrate your fix.

Really, it is that simple! All you need to do to get started is agree to the JRL and the Sun Contribution Agreement, and you're ready to roll.


 

Community Participation

 

There are many ways you can get involved in the JDK Community. The community homepage is your gateway to participating in the implementation of Java SE. From this home page you can do the following:

Project Peabody provides opportunities to participate in the JDK Community whether you are an experienced Java developer, a curious researcher, an enterprise application maintainer, or a relative newcomer to the world of Java technology. Check it out.


 

Related Links

 
Update Your Java Runtime Environment