In addition to the Sun SDKs, several other J2ME SDKs, IDEs, and related products from other vendors are available. We'll discuss a number of these tools and products in this section.
The J2ME Wireless Toolkit is a project management tool intended to simplify MIDP development. It can perform the compile and preverification steps automatically, including the generation of the JAR and JAD files. It is not a complete Integrated Development Environment (IDE), so it does not offer an editor. The MIDP SDK is included in the Wireless Toolkit, but the JDK version 1.3 is also required.
In addition to the MIDP SDK, the Wireless Toolkit contains some additional skins for the device emulation (see Figure 1.2). The additional skins are a pager with a complete keyboard and cell phone emulation with a thumbwheel, as well as support for the Palm OS Emulator, RIM pagers, and Motorola cell phones.
The main window of the toolkit, shown in Figure 1.3, consists of some buttons for creating a new project, opening existing projects, and building and running the project in the specified device emulation.
To edit the source code of the project files, you can use your favorite editor, such as Emacs or Windows' simple NotePad. Another option is to use Forte with the plug-in contained in the Wireless Toolkit. Together with Forte and JDK 1.3, the Wireless Toolkit forms a complete IDE for MIDP.
The MIDP for Palm OS is the first Mobile Information Device Profile implementation from SUN, running on a real mobile device. It consists of a set of executables in Palm prc-format and a converter capable of converting MIDP JAD/JAR file pairs (generated, for example, using the J2ME Wireless Toolkit) to the Palm MIDP format. Figure 1.4 shows the PRC Converter Tool included in the MIDP for Palm OS distribution.
The MIDP for Palm OS implementation can be used in conjunction with the J2ME Wireless Toolkit to create and convert MIDlets in order to run them on a Palm or on the Palm OS Emulator without additional tools (except an editor to create the source). Figure 1.5 shows the UIDemo application that is included in the J2ME Wireless Toolkit on a Palm Pilot.
Note
You can download the Mobile Information Device Profile implementation for PalmOS from the following URL:
The Swiss company esmertec Inc. offers a CLDC-compatible JVM and the MID profile. The CLDC and the MID version of Jbed come with the Jbed Integrated Development Environment (IDE), shown in Figure 1.6, in order to simplify application development.
Figure 1.7 shows the sample MIDPTestSuite, which is bundled with the Jbed Profile for MID. The main advantage of Jbed is that it is the fastest JVM for embedded devices currently available on the market.
Jbed obtains its high speed by compiling Java programs to native code. The compilation can be performed on the device itself or in advance on the desktop. Applications running on Jbed run incredibly quickly compared to other KVMs.
It is amazing that it is possible to get a complete class-to-native compiler on a constrained device like the Palm Pilot. Moreover, Jbed provides real-time capabilities. So if you are planning to create software for embedded systems, and Jbed is available for that platform, Jbed is probably the optimal choice. However, for devices with a build in JVM, such as MIDP- powered cell phones, in most cases it will not be possible to use Jbed.
Jbed does not include a device emulation, but a Palm Operating System Emulator (POSE) is available directly from Palm Inc. without charge.
Note
Use the following link to get more information about Jbed CLDC and the Jbed Profile for MID from esmertec:
The JBuilder MobileSet is a J2ME CLDC- and MIDP-compliant development environment. It is fully integrated with JBuilder 5 in order to simplify development of Java applications for mobile devices.
The MobileSet includes the following features:
Wizards for creating MIDP Projects and single MIDlets
Debugging MIDlets in NOKIA device emulators
Designer for Rapid Application Development of MIDlets
Deployment tools for creating JAR/JAD file pairs
Note
Use the following link to get more information about Borland's JBuilder MobileSet, Nokia Edition:
The Codewarrior for Java Version 6.0 offers a fully integrated development environment for Java applications and supports J2ME CLDC and MIDP application development as well. It supports a set of tools for J2ME application similar to those supported by JBuilder's MobileSet:
Project management for J2ME applications
MIDlet debugging in emulators
Deployment tools for creating JAR/JAD file pairs