Repeating a tactic that worked 5 years ago, the Apache Software Foundation went public this morning with a dispute with Sun over a test suite that would allow Apache to certify compatibility of their implementation of Java (code named Harmony). Geir Magnusson, VP of the Apache Harmony project, wrote:
Since August 2006, the ASF has been attempting to secure an acceptable license from Sun for the test kit for Java SE. This test kit, called the "Java Compatibility Kit" or "JCK", is needed by the Apache Harmony project to demonstrate its compatibility with the Java SE specification, as required by Sun's specification license. The JCK license Sun is offering imposes IP rights restrictions through limits on the "field of use" available to users of our software.
These restrictions are totally unacceptable to us.
Without a license for the suite, Apache could not even call their version "Java". Magnusson goes on to say that the restrictions are "contrary to Sun's public promise that any Sun-led specification would be fully implementable and distributable as open source/free software". He's referring to an agreement worked out in 2002 after a similar public letter resulted in a revision of the Java Specification Participation Agreement (JSPA) - the governing rules of the Java Community Process (JCP). Apache is essentially accusing Sun of reneging on the letter and spirit of the revised agreement.
Sun quickly fired off a reply on their official blog which read in part:
Sun has only just received this letter and since Sun had previously considered this matter private, we need some time to consider it before we provide a more detailed response.
A Sun spokesperson confirmed this for ZDNet, indicating that "We'll keep you posted once the execs have had time to review the letter in detail and are ready to get more explicit in the response."
It might take a while. The Sun statement indicated that "Our current priority is to make the Java platform accessible to the GNU/Linux community as quickly as possible," and that it will not be possible to please everyone: "In some cases, we'll have to agree to disagree on some points."
Apache has given Sun 30 days to either agree with them, or provide a good reason why not.