Excelsior JET is a certified Java SE 6 JVM with an Ahead-Of-Time (AOT) compiler and installation toolkit.
|One of its unique features is the Java Runtime Slim-Down deployment model that enables you to bundle light Java SE Runtime with your application to reduce the install package size.|
Available since 2007, Java Runtime Slim-Down has been proved effective for many Java applications. For GUI applications, in particular, the size of a complete installation package without dependency on the JRE starts from 5MB.
The table below shows download size figures for a few sample applications optimized using Java Runtime Slim-Down.
Note: the JRE need not be installed on end user systems to run these Java applications.
|JavaCC||none||3.9 MB||The most popular parser generator for use with Java|
|SWT||4.6 MB||Sample program taken from Eclipse SDK, illustrates common Standard Widget Toolkit (SWT) controls|
|Swing||8.7 MB||Popular cross platform text editor|
|SWT+Java2D||9.4 MB||Popular RSS/RDF/Atom Newsreader|
|Swing||9.0 MB||Peer-to-peer tool to synchronize files between PCs in home-network, intranet or over the internet|
|SWT+Java2D||9.5 MB||Multitrack guitar tablature editor and player. Check it with this evergreen opus. It will rock you!|
Click a link in the "Download" column to download the installation package for Windows.
- What Java SE components can be removed?
Some parts of the Java SE API are sufficiently isolated from the rest and can be removed altogether if the application does not use them.
Each component may comprise:
- public API classes
- implementing classes (one or more packages)
- native method libraries and associated resource files, such as fonts
- Does it help reduce disk footprint of Java applications?
Yes, of course. For instance, look at disk space occupied by the installed sample applications listed above:
Application Disk Footprint Description JavaCC 13.1 MB Parser generator for use with Java SWTDemo 14.4 MB Sample with SWT controls RSSOwl 33.4 MB RSS/RDF/Atom Newsreader PowerFolder 33.4 MB Tool to synchronize files between PCs TuxGuitar 31.1 MB Guitar tablature editor and player. Sun JRE 5.0 Update 13 69.6 MB Included for reference, not required to run the other applications. Sun JRE 6 Update 15 79.2 MB Included for reference, not required to run the other applications.
As you may see, the disk footprint of the optimized applications is much smaller that the footprint of the JRE alone.
- When Java Runtime Slim-Down cannot help?
If your Java application contains tens of thousands of classes or large data files, Java Runtime Slim-Down may have only a minor impact on the size of the resulting installation package.
- How does it compare to Sun's Java Kernel?
Initially, Java Kernel was proposed as a deployment technology aimed at reducing the download size. But what appeared in Java 6 Update 10 under the name Java Kernel is still far from the solution.
Java Kernel contains the basics (the JVM and core classes like
java.lang.*, java.io.*, etc) and you can bundle it with the application installer. However, unless you deploy a kind of
HelloWorld, the application is not usable immediately upon installation.
Upon application launch, the Java Kernel starts downloading the missing bundles from a Sun web site. No means are provided to package the required bundles with the application. In essence, the end users "download a downloader" and all you can do with it is specify which missing bundles must be downloaded first.
This short table highlights the key differences between Java Runtime Slim-Down and Java Kernel:
Question of the Day Java Runtime Slim-Down Java Kernel Is it possible to create a custom bundle with only the required components for the application installer? YES NO Can I host the server-side infrastructure on my own web site? YES NO When running a Java application, the dialog 'Installing additional components' is displayed repeatedly. Is this expected behavior? NO YES
You may find more details in Java Kernel FAQ. In our opinion, the Java Kernel is just a preliminary step towards a solution that may appear in the future.
- How does it compare to modularized JDK (Project Jigsaw)?
As modularized JDK is not yet ready (was scheduled for Java 7 but now postponed), it cannot be compared to Java Runtime Slim-Down simply because what is planned and what will be finally implemented may differ.
Nevertheless, we believe that Project Jigsaw is a step in the right direction.