


Currently, Java is offered in Enterprise, Standard, and Micro editions, with the Micro version geared to devices. Modularization of Java could lead toward a single Java implementation, said Robert Brewin, Sun application platform CTO. Optimizations can be done at install time, he said. "If we have a modular platform, then we instantly almost address the problems of download size and file system footprint," because all that needs to be downloaded is just what an application actually needs, said Reinhold. A class path is the path that the Java runtime environment uses to search for classes and other resource files. Also, modules would alleviate developers from needing to use a class path, said Reinhold. With a modular format, modules could be added to the base platform such as a sound module or one for Swing development. Jigsaw features a low-level module system for developers to use in their own code, according to Reinhold. Sun is tackling modularity through Project Jigsaw and Java Specification Request 294.

Modularity is intended to address a situation for which Java has gotten too big, Reinhold said. "We're working to define a modular form of the Java platform and its implementation we're working to evolve the Java Virtual Machine into a true, multilingual universal runtime for high-level languages and finally, we're doing things to make developers more productive," said Mark Reinhold, principal engineer for Java SE and OpenJDK.
