Brand-new deployment model for Java SE applications
Among other improvements in the upcoming version 5.0 of Excelsior JET, we plan to introduce a new deployment technique that will help you further reduce the download size of your Java apps.
The key idea is to select a few components of the entire Java SE API, which the developers could optionally exclude from the installation if the application does not use them.
For example, if your application does not use any of AWT, Swing, CORBA or, say, JNDI API, you will be able to exclude them from the installation created with the JetPackII tool.
To comply with the Java Compatibility requirements, the excluded components should be placed on a Web server to which the deployed application has access for downloading the components at run time.
NOTE: the actual download from the server will occur if and only if your application tries to use any of the excluded components.
With this technique enabled, JetPackII will create two packages:
- the installer to be shipped to end users; and
- a downloadable bundle (single file) to be placed on the server
JetPackII will also hard-wire the URL of the bundle into the application’s executable so that the JET Runtime will get access to the bundle, if necessary.
No changes to the application source code are required to use this deployment model.
Please share your comments or questions about this new technique, e.g. by replying to this message. Your feedback is very welcome.
We also would like to test this deployment model on your Java applications before the first beta of Excelsior JET 5.0 appears. If you think that your application will benefit from “trimming the baggage”, and you don’t mind us using it for testing, please drop us a line and our engineers will contact you.

February 19th, 2007 at 8:20 pm
Seems like a very cool feature!
Do you have any numbers indicating the scale of saving for a typical Swing application? E.g. what can I remove and how much would it reduce from the download bundle? Do you have any real world numbers for existing applications like you offered for the installer sizes?
February 20th, 2007 at 10:44 pm
I believe that this is a big step forward for distribution of JET applications. I am looking forward to taking advantage of this feature given the reduction in bandwidth costs and increased customer acceptance of the download size.
February 22nd, 2007 at 4:44 pm
Shai,
This new technology is approaching alpha, so we shall have some real numbers pretty soon. In general, the biggest savings will be enjoyed by applications that do not use AWT or Swing, that is, GUI-less or using alternative toolkits such as SWT or LWJGL.
Dmitry
April 24th, 2007 at 7:41 pm
[...] Using Download On-Demand, you can select the components of Java SE API which are not used by your application and remove them from the installation package. Note that DoD does not compromise the Java compatibility requirements. For more details, see this blog post [...]