Oft ist es erwünscht, in einem Programm auf Informationen über den Build-Prozess zuzugreifen, seien es das Build-Datum, die Build-Nummer oder die Version. Diese Information soll während des Build-Prozesses automatisch erzeugt und in den Programmcode eingebettet werden.
Neben diesen Build-Informationen sollen auch weitere Informationen eingefügt werden, wie zum Beispiel der Hersteller, die Webaddresse, etc.
Der hier vorgestellte JReleaseInfo AntTask oder das Maven Plugin erzeugen ein Java Source File mit finalen Getter-Methoden für die gewünschten Angaben. Ein Beispiel für die Versionsnummer sieht folgendermassen aus:
/** * Get version (set during build process to "1.3.0") * @return String version */ public static final String getVersion() { return "1.3.0"; }
Zusätzlich können Swing- und Text-Viewers mit einer main() Methode eingebaut werden, welche beim Aufruf den Inhalt der JReleaseInfo-Datei anzeigt. Dies kann für Bibliotheken benutzt werden, welche sowieso keine Main-Class im Manifest definiert haben.
Wenn ein Viewer eingebettet wird, kann durch Aufruf von
java -jar mylibrary.jar -t
ein Textoutput aller in der Informationsdatei gespeicherten Properties ausgelistet werden.
Wird in einer graphischen Umgebung -t weggelassen oder die JAR-Datei mit einem Doppelklick geöffnet, erscheint ein Fenster mit denselben Angaben: