Eclipse expands runtime scope
Connecting state and local government leaders
Developers of the open-source Eclipse platform have been expanding its ability to run applications across different systems.
SAN FRANCISCO ' Developers of the open-source Eclipse platform have been expanding its ability to run applications across different systems.
The idea is to allow developers who use Eclipse to "build and deploy the application logic and defer those decisions [of what platforms to run the application on] until deployment time," said Mike Milinkovich, executive director of the Eclipse Foundation. "That is where we're trying to take this technology."
Milinkovich spoke May 6 at the JavaOne Conference in San Francisco.
Eclipse software plays two roles. It is an integrated development environment that developers can use to build programs. It supports multiple languages, such as C++, Fortran, Java, PHP, Python, Perl and Tcl.
In its second role, the program works as a rich client platform (RCP). This runtime environment serves as a middle layer between the programs and the different operating systems and hardware configurations. Developers can write a program once for Eclipse and then use different versions for each computer/operating system combination the program will run on. That way, a single version of a program could run on both Microsoft Windows and Linux, using the OS-specific version of Eclipse for each platform.
Although Eclipse's RCP functionality has been used for desktop computer applications for several years, developers have been looking for ways to expand the scenarios in which the software could operate, which its component-based architecture supports. "Eclipse is a container-based approach [in which] you can dynamically load and unload components," or bundles, as needed, Milinkovich said.
For the presentation, Eclipse evangelist Wayne Beaton showed how the same basic program ' an expense reporting tool ' could run on a laptop PC or a Nokia phone and be delivered to the client as a Web page.
The program can be written once and, with minimal reconfiguration, be run on different platforms. Bundles that support the different platforms are added as needed.
"The bundles that are shared do not need to be recompiled," Beaton said. 'Build them once, and run them on different platforms.'
For the laptop PC demonstration, the program ran on the standard RCP configuration. For running as a browser page from a server, the sample program relied on Eclipse's Rich AJAX Platform, which formatted all the features for a Web browser using Asynchronous JavaScript and Extensible Markup Language. The platform was released in December.
And for the mobile phone, the program used the embedded RCP (eRCP), which reformats the interface to work in a smaller form factor and use the additional controls often found on cell phones, such as side buttons. Like the other versions of this program, the mobile version allows users to add or edit expense line items. However, the interface is broken up into multiple windows, each of which can only be accessed one at a time.
In addition to showing off Eclipse's multiplatform prowess, the software's spokesmen talked about the next release of the program ' Version 3.4, codenamed Ganymede. It is due to be released June 27. (New versions are always released on the last Thursday in June.)
For the latest release, 24 new or updated bundles will be shipped. One new item links Eclipse with Subversion, an open-source program for managing large software development projects. Another will be a collection of tools for enabling service-oriented architecture.
Version 3.4 will also be the first to offer packages of components tailored for specific uses, such as development in Java, C++ and software modeling.