Promote your software
Launcher is an utility subsystem to launch Java application. It supports processing of the instruction file, building a splash screen, building the class paths and invoking main method on another class.
The main advantage of this launcher is the ability to run some parts of application in sequences and in different classloaders - so it is easy to process the application autoupdate and then start the application within this launcher, all covered by one splash screen.
You can use this subsystem as-is (just one JAR file), or you can subclass some classes from it and create a new JAR from Launcher classes and your subclasses to launch your application.
The main class of subsystem is eu.beesoft.gaia.launcher.Launcher. Launcher processes a launch file. It is a file with the instructions. Ih an instruction has arguments, they are appended at the same line and separated by space from instruction name. Enabled instructions are:
Here is an example of the standard launch file:
path c:/myapp/lib/first.jar path c:/myapp/lib/second.jar path c:/myapp/classes run mypackage.MyClass firstArgument "second argument"
It creates a classpath from two JAR files and one directory and then invokes method main() on MyClass with two arguments.
Launcher can mediate its state by ProgressMediator implementation. ProgressMediator is an interface that describes a behavior of the UI component, which displays a progress of some long-term operation. The described methods are:
There are two implementations of ProgressMediator: