Sun Microsystems has tweaked its Java licensing, emphasising that the company wants to make Java as open source as possible while maintaining platform compatibility.
The vendor has also provided an update on the next version of Java, which boosts Web services functionality on the client side.
Key to the company's licensing plan is Project Peabody, which introduces a new scheme called a Java Internal Use License (JIUL), pronounced "jewel".
Under JIUL, users can change Java source code for their internal use only. JIUL is based on an honor system in which Sun expects compatibility to the J2SE specification but relies on users to ensure that compatibility. Use of Java under JIUL is free.
There was a risk, though, of Java forking because of JIUL but the company was allowing users to take that risk, said Graham Hamilton, a Sun vice-president and Sun Fellow in the company's Java platform group.
Forking of Java previously has yielded only regrets, according to Sun officials.
JIUL is expected to be ready in about a month.
Sun, with its licensing efforts, is seeking to appease open source advocates and those emphasizing compatibility.
"We are trying to respect needs of both sides, to create a licensing and collaboration atmosphere that's as close to open source as possible while not violating the expectations of the rest of the world around interoperability and compatibility," Sun CTO at Sun Developers Platform Group, James Gosling, said.
He also holds Sun Fellow status.
Despite the calls for open sourcing of Java made by parties such as IBM, not everybody is interested in an open source route for the programming language, according to Gosling.
He cited the Brazilian health care system and others as users that focus on compatibility rather than open source.
"By and large, they are actually somewhere between uninterested and hostile to the sort of wild and wooly world of open source," Gosling said. Created to simplify licensing, Peabody focused on transparency in developing source code, Hamilton said.
"There is definitely this desire [by developers] to see source code regularly," he said.
Developers also wanted to do their own bug fixes without licenses complicating that, and compatability also was a big concern.
Java Distribution License (JDL), a narrowly focused license for developing full-scale commercial deployments of Java on different operating systems, was also unveiled as part of Peabody.
Sun previously has created the Java Research License (JRL) as part of the Peabody effort. Intended for the research community, it allows for sharing of binary-based research distributions of Java. The company has been releasing source code for J2SE under the JRL.
Sun officials have also provided an update on the upcoming Mustang version of J2SE, which will be version 6.0. Due to ship in the first half of 2006, Mustang will focus on Web services, performance, monitoring, management, and development enhancements.
Mustang would make it easier to build large-scale desktop applications with Java, Hamilton said. The platform will also add Web Services Interoperability Organisation (WSIO) Basic Profile support, which already is in J2EE. A complete Web services stack, including JAX RPC functionality, was expected to be included in Mustang.
With Mustang, Java clients wouldl be able to use Web services to talk to back-end Java- or Microsoft .Net-based systems, Hamilton said.
J2SE provides an environment for application development on desktops and servers and serves as the foundation for the J2EE, according to Sun's Web site.