Super Prev Next

Overview


Super Prev Next

Excelsior JET at a glance

Excelsior JET is a toolkit and complete runtime environment for optimizing, deploying and running applications written in the Java(tm)programming language. The product package includes Excelsior JET Optimizer, Excelsior JET Runtime and Excelsior JET Installation Toolkit.

The JET Optimizer enables you to convert your application’s classes and jars into optimized x86 (IA-32) code on the developer’s system. As a result, you get high performance native executables for Microsoft Windows or Linux. The produced native code is highly resistant to reverse engineering and tampering.

The JET Runtime includes the Java SE API licensed from Sun Microsystems and provides all low-level Java routines which the optimized executables need to run such as garbage collection.

Excelsior JET Optimizer and Runtime are certified for compliance with the specification of the Java 2 platform, Standard Edition (J2SE), versions 5.0 and 1.4.2.

If you want to distribute your application to a number of clients, you use the Installation Toolkit to prepare an installation package including your optimized Java application and the JET Runtime engine. Your clients simply install the package and start using your application. Additional software installation, such as the Java Runtime Environment (JRE), is not required on target systems.


Super Prev Next

Established features


Super Prev Next

JET Optimizer

The JET Optimizer transforms Java bytecode (.class/.jar files) into high performance native code on the developer’s system before program execution. The resulting optimized executables run directly on the hardware.

The Optimizer employs various optimization techniques commonly used in traditional C/C++ or FORTRAN compilers. To resolve Java performance challenges, the JET Optimizer is powered by state-of-the-art optimizations such as inlining virtual calls, safe removal of ubiquitous synchronization and allocating objects on the stack.

The Optimizer comes with the JET Control Panel, a graphical wizard that lets you quickly set up a project file and convert your application’s classes into the highly optimized executable (see Chapter JET Control Panel.)


Super Prev Next

JET Runtime

The JET Runtime is a complete Java Virtual Machine (JVM). In particular, it includes a just-in-time (JIT) compiler to load and run Java class files. The key difference from other JVMs is that the JET Runtime can work with both Java classes and native executables produced by the JET Optimizer. For example, a JET-compiled application will be able to load Java plug-ins supplied in the form of jar files.

If your program uses plug-ins, loading them with the JIT compiler may take some time. To reduce the overhead, you may enable JIT caching in the JET Runtime. As a result, the native code produced by the JIT compiler will be retained in the JIT cache and reused on subsequent launches of the application. See Chapter Mixed Compilation Model for details.


Super Prev Next

Installation Toolkit

To facilitate rapid creation of installation packages, Excelsior JET includes JetPackII, yet another graphical wizard. Using it, you prepare an installation package including your optimized Java application and the JET Runtime.

The deployment procedure is as simple as possible. You specify the JET-compiled application(s) and other files to be deployed, edit few settings, and the JetPackII generates a self-extracting installation executable, automatically including the JET runtime.

The installation executable is powered by the bundled Excelsior Installer that features both unattended and interactive installations.

In the interactive mode, the installer guides the users through the installation process allowing them to specify installation settings as usual. You can customize the installer to show end-user license agreement and to display installation interface in the English, German, French, Spanish, Polish, Russian or Japanese languages, depending on your choice or the system locale settings.

JetPackII can also prepare the resulting package in the form of self-contained directory that can be just copied to target systems. It contains the clickable application’s executable that requires neither extra environment settings, such as PATH, nor additional software installation, such as JRE. You can easily integrate such package into any setup generator or run the application off a USB flash drive without installation.

Please refer to Chapter Deployment automation for more details on the JetPackII and Excelsior Installer tools.


Super Prev Next

What is new in Excelsior JET 4.8

This release enables you to reduce disk footprint of Java applications installed on target systems.

Other improvements are further decrease of the download size of installation bundles created with JetPackII and higher application performance on the hardware that supports parallel execution.

Finally, this release adds Spanish and Polish localization to Excelsior Installer and returns support for J2SE 1.4.2 requested by many customers.


Super Prev Next

Disk footprint reduction

Now the size of the client installation can be substantially reduced: a medium-size GUI application using SWT over Java SE 5.0 now takes only 20MB of disk space and can be run off a USB flash drive without installation.

Note that the required disk space may vary depending on the size of application’s resources such as images and media files.

The disk footprint reduction has been achieved by combining:

For more details, refer to section Disk footprint.

Note: disk footprint reduction is not available in the Standard Edition of Excelsior JET.


Super Prev Next

Support for J2SE 1.4.2 restored

To ease migration of customer’s applications to newer versions of the Java platform, this release of Excelsior JET includes support for J2SE 1.4.2, in addition to Java SE 5.0.


Super Prev Next

Other improvements