From 33613a85afc4b1481367fbe92a17ee59c240250b Mon Sep 17 00:00:00 2001 From: Sven Eisenhauer Date: Fri, 10 Nov 2023 15:11:48 +0100 Subject: add new repo --- .../hjp5/html/k100323.html | 297 +++++++++++++++++++++ 1 file changed, 297 insertions(+) create mode 100644 Master/Reference Architectures and Patterns/hjp5/html/k100323.html (limited to 'Master/Reference Architectures and Patterns/hjp5/html/k100323.html') diff --git a/Master/Reference Architectures and Patterns/hjp5/html/k100323.html b/Master/Reference Architectures and Patterns/hjp5/html/k100323.html new file mode 100644 index 0000000..02d6367 --- /dev/null +++ b/Master/Reference Architectures and Patterns/hjp5/html/k100323.html @@ -0,0 +1,297 @@ + + + +Handbuch der Java-Programmierung, 5. Auflage + + + + + + + + + +
 Titel  + Inhalt  + Suchen  + Index  + DOC  +Handbuch der Java-Programmierung, 5. Auflage +
 <<  +  <   +  >   + >>  + API  +Kapitel 51 - Hilfsprogramme des JDK +
+
+ + + + +

51.6 jar - Das Archivierungswerkzeug +

+
+ +
+ + + + +

51.6.1 Aufruf

+

+ + + + +
+ +
+jar [ commands ] archive { input-file }
+
+
+
+ + + + +

51.6.2 Beschreibung

+ +

+jar +ist ein Archivierungsprogramm, das Dateien und komplette Unterverzeichnisse +komprimieren und in eine gemeinsame Archivdatei packen kann. Es verwendet +ein Kompressionsformat, das den diversen zip-/unzip-Programmen +ähnelt, und wird analog dem UNIX-Tool tar +bedient. Ein Vorteil von jar +ist seine Portabilität, die sowohl für das erzeugte Dateiformat +als auch für das (in Java geschriebene) Programm selbst gilt. + +

+Wichtigster Einsatzzweck von jar +ist es, alle zu einem Java-Programm gehörenden Dateien (.class-, +Image-, Sound-Dateien usw.) in einer einzigen Datei zusammenzufassen. +Neben den organisatorischen Vorteilen, die diese Möglichkeit +zweifellos bietet, wurden jar-Dateien vor allem eingeführt, um +das Laden von Applets aus dem Internet zu beschleunigen. Dadurch müssen +Web-Browser nämlich nicht mehr für jede einzelne Datei, +die in einem Applet benötigt wird, eine eigene GET-Transaktion +absetzen, sondern können alle erforderlichen Files in einem Schritt +laden. Die Ladezeit von Applets wird dadurch drastisch verringert, +insbesondere, wenn viele kleine Dateien benötigt werden. + + + + +

51.6.3 Kommandos

+ +

+Im Gegensatz zu den übrigen Programmen, die in diesem Kapitel +vorgestellt wurden, kennt jar +keine Optionsparameter, sondern erwartet Kommandos an ihrer +Stelle. Ein Kommando besteht aus einem Buchstaben, der ohne den Präfix +- angegeben wird. Sollen mehrere +Kommandos kombiniert werden, so werden die zugehörigen Buchstaben +ohne Lücken direkt hintereinander geschrieben. Diese abweichende +Syntax stammt von dem Kommando tar, +das auf UNIX-Rechnern zur Archivierung von Dateien eingesetzt wird. +Tabelle 51.7 gibt eine Übersicht +der verfügbaren Kommandos. + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
KommandoBedeutung
cErzeugt eine neue Archivdatei (create). +Kann nicht zusammen mit t oder x verwendet werden.
tGibt das Inhaltsverzeichnis der Archivdatei +aus (table of contents). Kann nicht zusammen mit c oder x verwendet +werden.
x fileExtrahiert eine oder mehrere Dateien aus +dem Archiv (extract). Kann nicht zusammen mit c oder t verwendet +werden.
uFügt die angegebenen Dateien in die +bestehende Archivdatei ein.
fGibt an, dass der nächste Parameter +der Name der Archivdatei ist. Wird das Kommando f nicht angegeben, +verwendet jar statt dessen die Standardein- und -ausgabe.
vGibt zusätzliche Informationen aus +(verbose). Kann zusätzlich zu einem der anderen Kommandos +verwendet werden.
0Die Dateien werden ohne Kompression gespeichert. +
+

+Tabelle 51.7: Kommandos von jar

+ +

+Sollen beispielsweise alle .java-Dateien +des aktuellen Verzeichnisses in ein Archiv mit der Bezeichnung xyz.jar +gepackt werden, so kann dazu folgendes Kommando verwendet werden: + +

+jar cf xyz.jar *.java
+
+ + +

+Das Inhaltsverzeichnis des Archivs kann folgendermaßen abgerufen +werden: + +

+jar tf xyz.jar
+
+ + +

+Etwas ausführlicher geht es mit: + +

+jar tvf xyz.jar
+
+ + +

+Um die Datei Test.java aus dem Archiv +zu extrahieren, kann das folgende Kommando verwendet werden (das natürlich +auch ohne den Zusatz v funktioniert): + +

+jar xvf xyz.jar Test.java
+
+ + + + + +

51.6.4 Verwendung von jar-Dateien in Applets

+ +

+Die Verwendung von jar-Dateien in Applets +erfolgt mit Hilfe des ARCHIVE-Parameters +des APPLET-Tags (siehe Kapitel 39). +Soll beispielsweise das »Hello, World«-Programm HWApplet.java +aus Listing 39.7 aus einem jar-Archiv +hello.jar ausgeführt werden, so +ist in den folgenden Schritten vorzugehen. + +

+Zunächst werden die Dateien HWApplet.class, +hello.au und world.au +in ein jar-Archiv gepackt: + +

+jar cvf hello.jar HWApplet.class hello.au world.au
+
+ + +

+Anschließend wird die HTML-Datei HWApplet.html +zum Aufruf des Applets erstellt: + + +

+ + + + + +
+ +
+001 <html>
+002 <head>
+003 <title>HWApplet</title>
+004 </head>
+005 <body>
+006 <h1>HWApplet</h1>
+007 <applet
+008    code=HWApplet.class
+009    archive=hello.jar
+010    width=300
+011    height=200>
+012 Hier steht das Applet HWApplet.class
+013 </applet>
+014 </body>
+015 </html>
+
+
+HWApplet.html
+ +Listing 51.1: HTML mit ARCHIVE-Tag

+ +

+Nun kann das Applet wie bisher gestartet werden, benötigt aber +zum Laden aller Dateien nur noch eine einzige HTTP-Transaktion. +

+ + + + + + + + + +
+ +

+Leider unterstützen noch nicht alle Browser das jar-Format, +so dass seine Verwendung zum heutigen Zeitpunkt überlegt sein +will. Für die nahe Zukunft ist es aber ein wichtiger Schritt +zur Verbesserung der Ladezeiten von Applets.

+ + + + +
 Hinweis 
+
+


+ + + +
 Titel  + Inhalt  + Suchen  + Index  + DOC  +Handbuch der Java-Programmierung, 5. Auflage, Addison +Wesley, Version 5.0.1 +
 <<  +  <   +  >   + >>  + API  +© 1998, 2007 Guido Krüger & Thomas +Stark, http://www.javabuch.de +
+ + + -- cgit v1.2.3