Official and not-so-official thoughts on Java

Tuesday May 17, 2011

As previously communicated our strategy is to converge the HotSpot and JRockit JVMs into a single best-of-breed JVM
(blog, press release). While most of the work involved in this effort is engineering - taking ideas and features from JRockit and
porting them over to OpenJDK - we have also been working on convergence from a licensing perspective. This work is now complete,
and we have changed the license that we distribute both the Oracle (Sun) JDK and JRockit under. The new license is a slightly
modified version of the Binary Code License that Sun has used for various Java downloads for many years. The full text of the new
license is available here. For comparison, the old BCL is available here.

Summary (check the license for details):

JRockit is now free (gratis) for development and internal production use on general purpose computers. Clarification: I stole this wording from the license text. These are the same terms that have been used for the Sun JDK for the last ten years or so.

Commercial features continue to require a commercial license. This includes most features currently in JRockit Mission Control, JRockit Real Time and JRockit Virtual Edition. Previously, it was only possible to get a commercial license for these features as part of Oracle products (such as WebLogic Server), they can now be purchased standalone for use with any Java application.

No other major changes. Specifically, redistribution of the JDK is permitted, now also applicable to JRockit.

Q: Does this mean I can now use JRockit with any Java application?
A: Yes, under the same terms as you currently use the Oracle (Sun) JDK. You don't need to inform us and you don't need to pay anything.

Q: You're making me very curious about JRockit, how can I find out more?
A: I highly recommend the JRockit book (Packt, Amazon), which is very detailed and a good read. It will also give you
a good picture on what will be ported into OpenJDK as we continue to move forward.

Q: Why are you making JRockit free?
A: Since we are converging the JVMs technically it makes sense to treat them as a single "product" with two different
incarnations/implementations. Second, by making JRockit free we hope to get more feedback on any regressions in the converged JVM vs current JRockit, which will help our convergence project.

Q: Are you planning on making JRockit open source?
A: The converged JVM will be made available through OpenJDK. We will not open-source the current JRockit implementation.

Q: How do I find out more about the updated commercial offerings?
A: We will have more information about that later, though you can contact sales if it's urgent. Our first priority was to converge the license
terms.

Q: How do I find out which features are free, and which are commercial?
A: See the docs for details.

Q: Are any features that were previously free now for-charge?
A: No. It is very important for us that Java remains easily accessible to everyone, and that means free (Oracle JDK) and open (OpenJDK).

Q: How do I purchase commercial support?
A: We have been working on an updated version of the Sun Java for Business program, which will cover both the Oracle (Sun) JDK and JRockit.
More detail on this will be available soon. Again, if you have urgent questions, contact Oracle sales.

Q: How does this license change affect OpenJDK?
A: Not at all. OpenJDK is released under an open source licensing model.

Q: I am currently using the Oracle (Sun) JDK? Should I switch to JRockit?
A: If you move from Hotspot to JRockit now, you will have to plan a move to the converged JVM later. Whether it's worth it depends on your rationale for considering a move. Overall, we believe most of you probably benefit more from looking at JDK 7 instead, but it depends on what your needs are.

Q: Do you have any information on the differences between the JVMs?
A: There is some information in the docs but it's unfortunately somewhat old and a bit limited.