9.2 JFrame-Variante als jar-Datei
 
Was ist eine Jar-Datei? Eine jar-Datei ist ein Quasi-Ersatz für ein exe-Datei. Wir würden gerne ein Javaprojekt auf einem Rechner laufen lassen, ohne es z.B. vom Javaeditor aus starten zu müssen. Wegen der Plattformunabhängigkeit von Java, erzeugt der Java-Compiler aus den Quelltexten lediglich einen Bytcode, der für sich genommen nicht lauffähig ist. Vielmehr muss er von der VM von Java interpretiert werden. Das Kompilat eines Javaprojektes liegt als Sammlung von Klassen im Byte-Code vor. Als einen Art Ersatz für exe-Dateien bieten sich jar-Dateien an. Diese sind zunächst mal nichts anderes als gezipte Datei, in der alle Klassen der Klassen des Projektes untergebracht sind. Zusätzlich enthält sie eine Datei mit dem Namen Manifest.mf, in der Informationen über das Projekt stehen, z.B. welche Klasse die Main-Methode enthält.

Ein Beispiel:

Manifest-Version: 1.0
CLASS-PATH: .
Created-By: 1.5.0_02 (Sun Microsystems Inc.)
MAIN-CLASS: RechnerGUI

Um das Programm RechnerGUI.jar starten zu können, muss gesichert sein, dass jar-Dateien mit javaw.exe aus dem bin-Verzeichnis von jdk1.5.0_02 verküpft ist. Diese Verknüpfung wird automatisch beim installieren von jdk1.5.0_02 oder vom Java-Runtime-Envirement  erstellt. Bevor wir lernen, wie eine jar-Datei generieren, wollen wir sie testen.

Download:
RechnerGUI.jar
Speichern Sie dazu die Datei RechnerGUI.jar auf ihrer Festplatte und starten Sie das Programm durch Mausklick. Lässt sich das Programm so nicht starten, ist die Verknüpfung von jar-Dateien mit javaw.exe nicht korrekt.
  Sie können diese Verknüpfung auch per Hand erstellen:
 
  "C:\Programme\Java\jre1.5.0_02\bin\javaw.exe" -jar "%1" %*
 
  Der Ordner jre1.5.0_02 wurde bei der Installation von jdk1.5.0_02 erstellt, die Pfadangabe davor hängt davon ab, welchen Pfad man bei der Installation  von Java man gewählt hat. Wichtig ist, dass man den gelb unterlegten Teil inkl. Leer- und Sonderzeichen korrekt angibt.
Wie erzeugt man eine jar-Datei? Zum Erzeugen einer jar-Datei benutzt man das Programm jar.exe, das sich im bin-Verzeichnis von jdk1.5.0_02 befindet. Der Aufruf ist recht kompliziert, weshalb wir, wie schon bei der Erstellung einer Projektdokumentation den Javaeditor benutzen. Wir zeigen das am konkreten Beispiel von RechnerGUI.jar.
 
Schritt 1
 
Wir sammeln alle Klassen zuzüglich des Quellcodes der Klasse, die die Main-Methode enthält in ein gemeinsames Verzeichnis.

Download:
Mathematik.class
RechnerGUI.class
RechnerGUI.java
 
Schritt 2 Wir erzeugen z.B. mit dem Javaeditor oder dem Windows-Editor eine Textdatei. Vorlage.txt (Der Name ist vollkommen willkürlich). In die Textdatei schreiben wir die beiden Zeilen

CLASS-PATH: .      
MAIN-CLASS: RechnerGUI

Bei dem Windows-Editor ist darauf zu achten, dass die letzte Zeile ein hartes Ende hat, es also eine leere dritte Zeile gibt. Der Javaeditor organisiert das selbst. Der gelb unterlegte Teil ist vorgeschrieben und darf nicht geändert werden. Hinter den Doppelpunkten folgen jeweils ein Leerzeichen. Beim Klasspath setzten wir einen Punkt für das aktuelle Verzeichnis. Durch Leerzeichen getrennt lassen sich weitere Pfade angeben, was z.B. nötig wird, wenn das Projekt selbstgeschriebene Pakete enthält. In der zweiten Zeile wird der Name der Klasse geschrieben, die die Main-Methode enthält. Auf Groß- und Kleinschreibung ist zu achten.

Wie wir noch sehen werden, benutzt jar.exe die Informationen in Vorlage.txt um die Manifestdatei zu erzeugen. Legen Sie Vorlage.txt am besten im Verzeichnis an, in dem die Klassen des Projektes liegen und die zu erzeugende  jar-Datei liegen soll.

Download:
Vorlage.txt
 

Schritt 3 Wir teilen dem Javaeditor mit, welche Datei zum Erstellen des Manifestes verwendet werden soll:
 


 

Schritt 4

 

Wir starten jar.exe aus dem Java-Editor heraus:

Die jar-Datei mit dem Namen der Klasse die die Main-Methode enthält, wird erzeugt, in unserem Falle also RechnerGUI.jar

Man kann sich den Inhalt dieser jar-Datei z.B. mit WinZip betrachten:

 

  Öffnen wir die Manifestdatei, so finden wir in ihr:

Manifest-Version: 1.0
CLASS-PATH: .
Created-By: 1.5.0_02 (Sun Microsystems Inc.)
MAIN-CLASS: RechnerGUI
 
Tipp Sichern Sie sich Vorlage.txt als Vorlage weiterer jar-Dateien.
 
zu 9.3 JApplet Variante 1
zur Startseite www.pohlig.de  (C) MPohlig 2005