Before building your first installer, it is important to understand the fundamentals behind InstallAnywhere's multi-platform installer technology. Regardless of what platform you're running on, the installer at its core is entirely Java code, capable of executing on any platform that has a Java 1.1 virtual machine. Beyond that, the installer can be packaged in two ways:
In general, you will want to build executable installers for as many platforms as you are targeting because of their superior user experience. Instead of relying on the user to already have a Java virtual machine available, executable installers will automatically attempt to find a suitable virtual machine to use on the computer they are running on. (If one is not available, a suggestion will be made as to where one can be downloaded.)
Note that InstallAnywhere Now! installers require that a virtual machine already be present on the target computer; installers built with the other products in the InstallAnywhere line are capable of installing a virtual machine if one is not already present.
The figure below illustrates the installer directory structure that InstallAnywhere builds on your computer, assuming that you have specified that you want to build for all possible platforms.
As you can see, there are separate folders for Mac OS, Unix, Windows, and "Other Platform" installs. Inside each of folders that have LaunchAnywhere support (Mac OS, Windows, and Unix) you will find a "NoVM" folder, and inside that, an executable that can be run on the platform in question. (The "NoVM" folder signifies that no VM is included in the installer--an installer will need to be pre-installed on the target computer. Other versions of InstallAnywhere will allow a VM to be included in the installer if desired.)
Once built, these installers can be posted to a web server, a file server, or even written to CD-ROM.
Note about Mac OS installers: Mac installers are automatically built in a file format called "MacBinary" to ensure cross-platform compatibility. In order to run the Mac installer, you need to un-MacBinary the file to turn it into a real Macintosh file. Use a utility like Stuffit Expander 4.5 (earlier versions may not work properly). StuffIt Expander can be obtained from http://www.AladdinSys.com.
InstallAnywhere Now! is ideal for creating multiplatform-compatible CD-ROM-based installations. Probably the best method for accomplishing this is to burn the executables themselves onto an ISO 9660 formatted CD-ROM. Each executable installer (executable installers can be created for Windows 95/NT, Unix, and Mac OS) is a self-extracting installer, so each is entirely self-contained.
Note for users looking to distribute to Mac OS: The Mac installers built with InstallAnywhere are created in MacBinary format so they can be easily transported to different operating systems. However, this means that the installers cannot be run directly by double-clicking on them; they need to be "un-MacBinaried" first via a tool like StuffitExpander 4.5 from Aladdin Systems. To ensure that your target users have the best possible experience (and to ensure that they don't need to have a tool like StuffitExpander), you may want to unMacBinary the installer for them, then burn the results on a Macintosh CD-ROM. In order for this procedure to work, you will need to actually burn the CD on a Mac OS-compatible computer. If you are targeting other platforms in addition to Mac OS, you may want to consider creating a dual-mode CD-ROM that has both an ISO 9660 partition and a Mac OS partition.
On platforms where InstallAnywhere does not have LaunchAnywhere support (IA Now! has LaunchAnywhere support for Windows 95/NT, Unix, OS/2, and Mac OS), end-users can still install your software via "Other Platform" installation support. "Other Platform" installers are written entirely in Java and can be invoked on any Java 1.1 or later system. By not having LaunchAnywhere support, however, the user experience is diminished in the following ways:
Instead, "Other Platform" installers can be invoked by typing the following code at a command line prompt:
jre -cp install.zip install
This assumes that a suitable Java 1.1-compatible VM has already been installed on the destination system and is included in the system's PATH (or comparable) environment variable.
While preparing the other wizard steps, InstallAnywhere will display a splash screen. InstallAnywhere Now! does not allow modification of the installer splash screen, but check other products in the InstallAnywhere line for information on how to do so.
After preparing the wizard steps, the Introduction step appears.
Users can choose which VM should be utilized to run their application. InstallAnywhere Now! will locate any Java VM version 1.1 or greater on the target system. Click the "Search" button to do a thorough search of the target hard drive for additional virtual machines, or hit "Choose Another..." to manually select a VM. (Choose the executable that represents the VM: for a Sun VM, this will be "java.exe" or "jre.exe"; for Microsoft, it will be "jview.exe.")
Let your users choose where they would like to install your software.
During installation, the user will see a progress bar giving them an indication of how far the installation has progressed.
Signifies that the installation is complete.