Unterschied zwischen JAR und WAR

Anonim

JAR vs WAR

JAR und WAR sind zwei Typen von Dateiarchiven. Korrekter ist eine WAR-Datei auch eine JAR-Datei, aber sie werden für verschiedene Zwecke verwendet. JAR-Dateien sind wie bekannte ZIP-Dateien. Sie können für die allgemeine Archivierung verwendet werden. Die beliebteste Verwendung von JAR-Dateien ist jedoch die Verwendung als Container für Java-Klassendateien und Ressourcendateien, aus denen eine Java-Anwendung besteht. WAR-Dateien werden speziell für die Bereitstellung von Webanwendungen verwendet.

Was ist JAR?

JAR (Java ARchive) ist ein Dateiarchiv, das viele andere Dateien enthält. JAR-Dateien werden normalerweise von Java-Entwicklern verwendet, um Java-Anwendungen oder Java-Bibliotheken zu verteilen, indem die JAR-Dateien als Container für die Java-Klassendateien und entsprechende Ressourcendateien (zum Beispiel Text, Audio, Video usw.) verwendet werden. Das bekannte Archivformat ZIP ist die Grundlage für die JAR-Datei. Benutzer können entweder den Befehl jar des JDK (Java Development Kit) oder eine reguläre ZIP-Software zum Extrahieren des Inhalts von JAR-Dateien verwenden. JAR-Dateien sind eine praktische Möglichkeit, eine gesamte Webanwendung in einer einzigen Datei herunterzuladen, ohne dass alle Dateien, die die Webanwendung bilden, separat heruntergeladen werden müssen. Um JAR-Dateien lesen / schreiben zu können, verwenden Java-Entwickler die in Java enthaltenen Klassen. util. zip-Paket. Wenn die JAR-Datei als eigenständige Anwendung ausgeführt werden soll, wird eine der Klassen als "Hauptklasse" innerhalb der Einträge der Manifestdatei angegeben. Ausführbare JAR-Dateien können mit dem java-Befehl mit dem jar-Attribut (zB java -jar foo. Jar) ausgeführt werden.

Was ist WAR?

WAR (Web Application aRchive) ist eine JAR-Datei, die als Container für eine Gruppe von Webanwendungsressourcendateien (aus denen eine Webanwendung besteht) wie JSP (Java Server Pages), Servlets, Klassendateien, XML- Web (HTML) Seiten. WAR-Dateien werden durch ihre identifiziert. War-Dateierweiterung. Sie wurden von Sun Microsystems (ursprüngliche Entwickler der Java-Programmiersprache) entwickelt. Digitale Signaturen, die in JAR-Dateien verwendet werden (um den Code anzuvertrauen) können auch für WAR-Dateien verwendet werden.

Eine WAR-Datei ist intern in einer Hierarchie von speziellen Verzeichnissen organisiert. Die Struktur der Webanwendung, die in der WAR-Datei enthalten ist, wird im Web definiert. xml-Datei (die sich im Verzeichnis / WEB-INF befindet). Web. xml beschreibt auch, welche URL mit welchem ​​Servlet verbunden ist. Sie definieren auch die Variablen, auf die innerhalb des Servlets zugegriffen werden kann, und Abhängigkeiten, die eingerichtet werden müssen. Wenn die WAR-Datei jedoch nur JSP-Dateien enthält, dann das Web. XML-Datei ist optional.

Was ist der Unterschied zwischen JAR und WAR?

JAR-Dateien haben die. Jar-Dateierweiterung, während WAR-Dateien das haben. Kriegserweiterung.Eine WAR-Datei ist jedoch ein bestimmter Typ einer JAR-Datei. JAR-Dateien enthalten Klassendateien, Bibliotheken, Ressourcen und Eigenschaftsdateien. WAR-Dateien enthalten Servlets, JSP-Seiten, HTML-Seiten und JavaScript-Codierung. JAR-Dateien werden zum Archivieren einer ganzen Java- (Desktop-) Anwendung verwendet, während WAR-Dateien zur Bereitstellung von Webanwendungen verwendet werden.