Sun has surprised many by putting its Java platform under the GNU general public licence, instead of its own open-source licence.
The company will release both Java Platform Standard Edition (Java SE) and its Java Platform Micro Edition (Java ME) under the GNU general public license version 2 (GPLv2) instead of the CDDL (Common Development and Distribution Licence) which it normally uses.
"GPL is the right choice," said Sun's vice president of Java developer products and programs, Laurie Tolson. She stressed that the move shouldn't be read as an admission that CDDL has failed, but confessed that convincing developers to adopt a newer open-source licence has taken more time than Sun might have hoped.
The GPL was irst created in 1989 and then revised as GPLv2 in 1991. It is used by the Linux operating system, MySQL AB's database and the Samba file-and-print server project.
Sun first committed back in May to make Java freely available and since that time company executives have been consulting with Sun partners and developers to determine which licence would best meet their needs.
Compatibility was a key driver for Sun in the decision to use GPL for Java, Tolson said. In particular, the vendor is hoping that GNU/Linux distributions such as Debian and Ubuntu will bundle Java into their operating systems and so take the development environment into new markets.
At present, the plan is to offer the open-source versions of Java SE and Java ME under GPLv2. But Sun is open to adding another open-source licence should the vendor not see rapid uptake of Java under GPL, Tolson said. At the same time, Sun will continue to provide commercial versions of its Java technologies for those users seeking paid support.
Sun also committed to providing dual licensing for Project GlassFish, its open-source application server initiative based on the Java Platform Enterprise Edition (Java EE). Underway since June 2005, GlassFish was available under CDDL. From next year, GlassFish will also be licensed under GPLv2 to make it easier for developers to distribute versions of Java SE, Java EE and Java ME together.
The rest of Sun's open-source software, including its OpenSolaris operating system, will continue to be offered under CDDL. "We'll continue to evaluate what delivers our software in the most effective manner," said Jean Elliott, Sun's director of product marketing for Java SE. Sun will consider factors such as increasing compatibility, driving innovation, and building community, she added.
Sun is hoping open sourcing Java ME will help stop the fragmentation in the market, instead driving convergence around the freely available version of Java. "We also hope to deepen ties with developers," he said, not just in mobile games where Java has already been very successful, but also in multi-media, information services and messaging.
Original reporting by IDG News Service