A class that is used to launch a Java process. The primary purpose of this
class is to eliminate the need for a batch or shell script to launch a Java
process. Some situations where elimination of a batch or shell script may be
desirable are:
You want to avoid having to determining where certain application paths
are e.g. your application's home directory, etc. Determining this
dynamically in a Windows batch scripts is very tricky on some versions of
Windows or when softlinks are used on Unix platforms.
You need to enforce certain properties e.g. java.endorsed.dirs when
running with JDK 1.4.
You want to allow users to pass in custom JVM arguments or system
properties without having to parse and reorder arguments in your script.
This can be tricky and/or messy in batch and shell scripts.
You want to bootstrap Java properties from a configuration file instead
hard-coding them in your batch and shell scripts.
You want to provide localized error messages which is very tricky to do
in batch and shell scripts.