Mailing Lists: Apple Mailing Lists

Image of Mac OS face in stamp
 
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Installers for Java Apps



On Jul 5, 2007, at 2:09 PM, Paul Archibald wrote:

We are thinking about the installer for our app, and my partner is thinking of a universal installer of some sort for Windows and Mac. I don't see his reasoning, but I want to check a couple of things with you folks before I say "that is a lousy idea"! )I want to use PackageMaker.)

We've had very good experiences with Install4J:

http://www.ej-technologies.com/products/install4j/overview.html

It is commercial and some would consider expensive ($1199 for multi- platform including very good Windows, MacOS X and Linux support, or $399 for Windows only). For the engineering time it saves us it's an absolute bargain. InstallShield also offers a similar package that has more power (esp. for Windows) but is more expensive. InstallAnyware is another one I've used, is similar but with a tad more features than Install4j, and more expensive. There are of course many others but those are the ones I've used personally.

So, two questions:

1 The app requires Java 5. If our users need to upgrade their Java, it looks like the best way to handle that is by pointing them at Apple's website for a new version. That means an 80Mb download, but I don't see any reasonable alternative. Is there another way of getting a Java upgrade that I have missed, one which is not so big?

(I am against bundling the latest Java with our app, that sends our package size from around 6Mb to 86Mb, which my poor 28k dialup can't handle.)

In most cases your best alternative is to do the full bundle. There are some licensing steps you'll have to take otherwise and that means lawyers which always ends up being expensive and slow (technically simple but I guess it's not really a technical issue at all).


If you use Install4j (or InstallShield/InstallAnyware) for most platforms they provide JVM bundles that you can host on any web server, include in the installer, and optionally make an install-time download (the installer checks for an already installed valid version, and if not found, informs the user that it needs to download the jvm, downloads and installs the jvm in the background, and then continues the install). The JVM bundles do tend to be smaller in size because everything other than the JVM itself is stripped out. If I recall correctly the jvm 1.5 bundles were running in the low 20MB range. You can also mark a jvm as a "private jvm" which only is used with your java app - handy if your app relies on a specific JVM release and you don't want to interfere with any existing JVMs the user may have on their machine. A godsend for QA esp when you're doing GUI stuff. In addition to the standard installation, for our purposes (server applications) they also provide helper features like startup items on Mac and Windows services, splash screen support, and the ability to do scripted and/or headless installations by simply checking off some boxes in the installer-maker GUI.

I'm not affiliated with these commercial installer companies but have been a satisfied customer. I'm definitely not going to code an installer in C ever again. :)

-iain

Attachment: smime.p7s
Description: S/MIME cryptographic signature

 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Java-dev mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/java-dev/email@hidden

This email sent to email@hidden

References: 
 >Installers for Java Apps (From: Paul Archibald <email@hidden>)



Visit the Apple Store online or at retail locations.
1-800-MY-APPLE

Contact Apple | Terms of Use | Privacy Policy

Copyright © 2007 Apple Inc. All rights reserved.