InfoQ

News

IcedTea: The First 100% Compliant Open-Source Java

Posted by R.J. Lorimer on Jun 21, 2008 03:50 PM

Community
Java
Topics
Community ,
Open Source ,
Governance ,
Licensing
Tags
GNU ,
Java SE
This week it was announced that the RedHat-initiated IcedTea project, along with OpenJDK, has reached 100% compliance with the Java Test Compatibility Kit (TCK), officially becoming the first completely open-source (GPL-licensed) Java implementation to pass the TCK.
This week the IcedTea Project reached an important milestone - The latest OpenJDK binary included in Fedora 9 (x86 and x86_64) passes the rigorous Java Test Compatibility Kit (TCK). This means that it provides all the required Java APIs and behaves like any other Java SE 6 implementation - in keeping with the portability goal of the Java platform.
Passing the TCK is generally considered a significant effort:
The Java TCK is a complex suite of tools and documentation that verifies that Java implementations conform to the Java specification. It consists of more than 80,000 tests and over 1 million lines of code.
As discussed previously on InfoQ , the IcedTea project is able to be a 100% GPL-licensed Java implementation by utilizing OpenJDK release snapshots, and replacing the remaining 5% of propertiary components with replacements from the GNU Classpath project.
The IcedTea project was created by the GNU Classpath team along with a handful of RedHat developers due to the need to replace all of the proprietary code with open source implementations. GNU Classpath provides many GPL-licensed replacements of the proprietary-licensed binary plugs still found in OpenJDK, making an IcedTea build of OpenJDK more-readily available for distributions on platforms such as Redhat's Fedora Linux distribution. Fedora 9 contains functionally complete OpenJDK packages, in part due to the contributions from IcedTea.
Other open-source Java implementations, such as Apache Harmony, have been unable up to this point to pass the TCK, however not all of the difficulties have been related to technical issues. In April of 2007, the Apache Software Foundation sent an open letter to Sun Microsystems with the intent of solving key issues with licensing the TCK for testing against the Harmony platform; licensing issues that prevented the Harmony team from legally running the TCK in an open-source way. While Sun responded to the open letter, there has as-of-yet been no resolution of the licensing issues for the Harmony team, and they are still unable to run the TCK.

The IcedTea project is not subject to the same licensing issues as Apache Harmony, as Sun has provided a special version of the TCK license that is targeted to any Java implementation that is a derivative of OpenJDK; something that Apache Harmony cannot claim.

InfoQ will continue to report on the development of open-source Java implementations as new information becomes available.
  • This article is part of a featured topic series on Governance

8 comments

Reply

Should we distribute Jython and/or JRuby with IcedTea? by Bill Burke Posted Jun 21, 2008 5:31 PM
Re: Should we distribute Jython and/or JRuby with IcedTea? by Jonas Bonér Posted Jun 22, 2008 2:33 AM
Re: Should we distribute Jython and/or JRuby with IcedTea? by Viktor Klang Posted Jun 22, 2008 6:34 AM
Re: Should we distribute Jython and/or JRuby with IcedTea? by Clinton Lee Posted Jun 22, 2008 3:12 AM
Re: Should we distribute Jython and/or JRuby with IcedTea? by Weiqi Gao Posted Jun 22, 2008 7:27 AM
Re: Should we distribute Jython and/or JRuby with IcedTea? by Dean Del Ponte Posted Jun 22, 2008 9:04 PM
Not for Profit Open Source Community TCK License Agreement by Niall P Posted Jun 24, 2008 9:17 AM
Re: Not for Profit Open Source Community TCK License Agreement by Bill Burke Posted Jun 24, 2008 6:21 PM
  1. The dev manager of Iced Tea asked me an interesting question: Should we bundle JRuby and Jython with the IcedTea download?


    Let me know...


    --

    Bill Burke

    JBoss, a division of Red Hat

    bill.burkecentral.com

  2. None of them, bundle Scala :-)

  3. The dev manager of Iced Tea asked me an interesting question: Should we bundle JRuby and Jython with the IcedTea download?
    Let me know...
    --
    Bill Burke
    JBoss, a division of Red Hat
    bill.burkecentral.com

    Initially I thought that would be good, but then changed my mind to 'no' for two reasons:

    1) A developer a can't assume its there as standard (ie: the sun jdk doesn't have it),

    2) It should be very easy to install as a library anyway with just a 'yum install jruby/jython' command.

    But I suppose it does have advantages if you are using [j]ruby or [j/p]ython frameworks.

  4. Jonas, you crazy guy. ;D

  5. What benefits would bundling JRuby and Jython with IcedTea bring?

    And when you talk about IcedTea, do you mean the build harness only, or a complete OpenJDK packages in Fedora 9.

    If it is the latter, then my question is "what do you mean by \"bundle\"?" If it means when an end user installs "openjdk" by invoking the "yum install openjdk" command the system will also install JRuby and Jython after which the user cannot remove just the JRuby or Jython part by invoking "yum remove jruby" or "yum remove jython", I'd say that's a bad thing.

    If it means that the IcedTea team, after tackling the OpenJDK build/packaging problems, culminating in the inclusion of "openjdk" in Fedora 9, would like to do the same for JRuby and Jython, essentially allowing the newest versions of JRuby and Jython to be easily installed and removed from an end users system, I'd say that's a good thing.

  6. Groovy please!

  7. Red hat has licensed (paid for) the JDK.

Exclusive Content

Diary of a Fence Sitting SOA Geek

In this presentation, Mark Little explains the history of SOAP/WSDL/WS-*-based web services and RESTful HTTP and highlights how the two approaches might converge into a single solution.

Flex for XML and JSON

Platforms need interoperability. In this article Flex interoperability with JSON and XML is explored including direct mapping to chart and grid components.

Measuring Agile in the Enterprise: 5 Success Factors for Large-Scale Agile Adoption

Michael Mah analyzes the development process in 5 companies: 2 Agile (one of them BMC) and 3 classic. He presents the factors which contributed to the success of BMC's Agile adoption.

Tom Preston-Werner on Powerset, GitHub, Ruby and Erlang

In this interview filmed at RubyFringe 2008, Tom Preston-Werner talks about how both Powerset and GitHub use Ruby and Erlang, as well as tools like Fuzed, god, and more.

David Laribee on Alt.NET and its Mission

David Laribee discusses the purpose of ALT.NET, its mission and future.

Discover RailsKits and Stop Writing Redundant Code

Ruby on Rails has become a popular Ruby framework for creating web applications in recent years. An aspect of creating a web application is the need to repeatedly create the same base functionality.

A Formal Performance Tuning Methodology: Wait-Based Tuning

Steven Haines talks about tackling web application performance tuning by proposing a method called wait-based tuning.

Shaw and Fowler About Forging a New Alliance

Shaw and Fowler talk about the need for a new relationship between the business department and the IT department. Studies have shown that projects mostly fail due to miscommunication between the two.