JEMS installer provides a way to install a number of JEMS products. Notion of application profile is supported which allows user to select a pre-configured profile and fine tune it.
JBoss build design forum - used to be utilized for installer discussions
JEMSInstallerMaven - notes on Maven integration
JEMSInstallerRoadmap - installer roadmap
JEMSInstallerLocalization - how the localization works and how to add new languages
As of the 4.0.4.GA based JBossAS release, the installer has been pulled out of
the jboss-4.0.x module into its own svn repository. The URLs for the installer
https://svn.jboss.org/repos/installer/jems-installer : the installer project itself. The 4.0.x based installer is currently developed in the trunk. This is the only source tree required to build the project since other components are pulled in as binary dependencies.
https://svn.jboss.org/repos/installer/izpack-listeners : the custom izpack listeners used by the jems-isntaller to augment the install.xml compile data and installer listener that integrates customization of the install contents using velocity. This project is only needed to update the jboss/izpack-listeners binary component in the repository. Unless your debugging/customizing the izpack listeners this project is not needed.
https://svn.jboss.org/repos/installer/izpack-installer : IzPack 3.8.0 customized to include the install group panel support. This is being merged back into the IzPack project. This project is only needed to build the izpack binary component in the repository. Unless your debugging/customizing izpack this project is not needed.
For the public SVN repository use http://anonsvn.jboss.org.
Building the Installer
To build the installer, run the
target using the jems-installer/build.xml script.
This is the default target. Any jdk1.4.2+ may be used to build the installer.
Running the Installer
java -jar jems-installer-1.2.0.GA.jar
The installer attempts to write a log file in its own folder (the log file is called install.log or jems-install.log depending on the version). When running the installer from a CD, DVD or other read-only media, the log file is being written to the system's temporary folder. The exact location of this file will be written to the console upon start:
java -jar jems-installer-1.3.0.BETA2.jar PackageListener , install.log=D:\DOCUME1\username\LOCALS1\Temp\jems-install.log
Any jdk1.4.2+ may be used to build the installer.
Once the GUI installation is complete a file called InstallConfigRecord.xml is written in your $JBOSS_HOME folder, which is the folder you specified you want to install the server into. It contains all the information you have entered in the JEMS Installer and can be used to repeat the same installation on other machines. You can also send this file when reporting a bug.
In order to repeat an installation you must run the installer with this file as an argument (make sure you give the full path to InstallConfigRecord.xml if it's not in the same directory as jems-installer-1.2.0.BETA1.jar):
java -jar jems-installer-1.2.0.BETA1.jar InstallConfigRecord.xml
java -jar jems-installer-1.2.0.BETA1.jar -installGroup default installpath=/test/jboss-4.0.4.GA
This line will delete all files copied by the JEMS Installer:
java -jar $JBOSS_HOME/Uninstaller/uninstaller.jar -c
This line will delete the whole $JBOSS_HOME folder includeing all log files, deployed applications and anything else inside it:
java -jar $JBOSS_HOME/Uninstaller/uninstaller.jar -c -f
The IzPack installer builder used to create the JEMS installer is pulled down
as a binary dependency from the jbossbuild repository using the createthirdparty
target. In addition, all of the binary content such as jbossas, portal, etc must
also be in the repository. The build-thirdparty.xml defines the binary content
that is pulled for inclusion into the installer. Currently this includes:
IzPack (jbossbuild component=izpack)
Custom jboss IzPack listeners (jbossbuild component=jboss/izpack-listeners)
JBossAS (jbossbuild component=jbossas)
JBossWS for Java5(jbossbuild component=jboss/jbossws)
EJB3(jbossbuild component=jboss/ejb3). Currently this is build from the jbossas jboss-4.0.x/ejb3 module using JDK5. The ejb3/build.xml repository-zip target creates the repository component contents for a given jbossas release. See the JBossASReleaseChecklist for details on how this is currently built.
Jboss Portal (jbossbuild component=jboss-portal)
As new components are added to the installer update this list and ensure that
the this dependency list is updated.
Updating the jbossauto-install.xml for the trunk
The trunk version of the JEMS installer uses an automatic jbossauto-install.xml file generation tool. If you only have modified the packs of the installation you must not take any further actions. You must update jbossauto-install.xml.template if you have modified the panels of the installation or the default values of the userInputPanel variables.
Updating the jbossauto-install.xml for the media kit
The command line install behavior depends on the install group to pack mapping defined in the jbossauto-install.xml file. This file is generated by the FinishPanel as opposed to the SimpleFinishPanel that is used for the release. Whenever there is a pack addition, removal or reordering of pack elements in the install.xml descriptor, the jbossauto-install.xml com.izforge.izpack.panels.InstallationGroupPanel element needs to be updated. To do this:
Build the installer with the FinishPanel in place of the SimpleFinishPanel in the install.xml:
Run the gui installer and select any profile
When you get to the final panel, select the Generate an automatic installation script button and save the file as anything, groups.xml for example.
Incorprate the com.izforge.izpack.panels.InstallationGroupPanel elements from the groups.xml into the jbossauto-install.xml.