Was ist der Unterschied zwischen einer .jar
und einer .war
Datei?
Ist es nur die Dateierweiterung oder gibt es noch etwas mehr?
Was ist der Unterschied zwischen einer .jar
und einer .war
Datei?
Ist es nur die Dateierweiterung oder gibt es noch etwas mehr?
Antworten:
Von Java-Tipps: Unterschied zwischen Ohrgefäß- und Kriegsdateien :
Diese Dateien sind einfach komprimierte Dateien mit dem Java-JAR-Tool. Diese Dateien werden für verschiedene Zwecke erstellt. Hier ist die Beschreibung dieser Dateien:
JAR-Dateien: Die JAR-Dateien enthalten Bibliotheken, Ressourcen und Zubehördateien wie Eigenschaftendateien.
WAR-Dateien: Die War-Datei enthält die Webanwendung , die auf jedem Servlet- / JSP-Container bereitgestellt werden kann. Die .war-Datei enthält JSP-, HTML- , Javascript- und andere Dateien, die für die Entwicklung von Webanwendungen erforderlich sind.
Offizielle Sun / Oracle-Beschreibungen:
Wikipedia-Artikel:
Eine .war
Datei hat eine bestimmte Struktur in Bezug darauf, wo sich bestimmte Dateien befinden. Davon abgesehen ist es nur ein .jar
.
Sie fügen einer J2EE-Anwendung Webkomponenten in einem Paket hinzu, das als Webanwendungsarchiv (WAR) bezeichnet wird. Hierbei handelt es sich um eine JAR, die dem für Java-Klassenbibliotheken verwendeten Paket ähnelt. Ein WAR enthält normalerweise neben Webkomponenten noch andere Ressourcen, darunter:
- Serverseitige Dienstprogrammklassen (Datenbank-Beans, Einkaufswagen usw.).
- Statische Webressourcen (HTML-, Bild- und Audiodateien usw.)
- Clientseitige Klassen (Applets und Utility-Klassen)
Ein WAR hat eine bestimmte hierarchische Verzeichnisstruktur. Das Verzeichnis der obersten Ebene einer WAR ist das Dokumentstammverzeichnis der Anwendung. Im Dokumentstamm werden JSP-Seiten, clientseitige Klassen und Archive sowie statische Webressourcen gespeichert.
( Quelle )
Ein .war ist also ein .jar, enthält jedoch Webanwendungskomponenten und ist nach einer bestimmten Struktur angeordnet. Eine .war-Datei kann auf einem Webanwendungsserver wie Tomcat oder Jetty oder einem Java EE-Server wie JBoss oder Glassfish bereitgestellt werden.
Eine .war
Datei ist ein Webanwendungsarchiv, das auf einem Anwendungsserver ausgeführt wird, während ein .jar
Java-Anwendungsarchiv eine Desktopanwendung auf dem Computer eines Benutzers ausführt.
Eine War-Datei ist eine spezielle JAR-Datei, die zum Packen einer Webanwendung verwendet wird, um die Bereitstellung auf einem Anwendungsserver zu vereinfachen. Der Inhalt der Kriegsdatei muss einer definierten Struktur folgen.
.jar und .war sind beide komprimierte archivierte Dateien. Beide können die optionale Manifestdatei META-INF / MANIFEST.MF enthalten, die informative Informationen wie die Versionierung und Anweisungsattribute wie Klassenpfad und Hauptklasse für die JVM enthält, die sie ausführen wird.
.war-Datei - Webanwendungsarchiv, das in einem 'Servlet-Container' ausgeführt werden soll und möglicherweise andere JAR-Dateien (im Verzeichnis WEB-INF / lib) enthält, kompilierte Klassen (im Verzeichnis WEB-INF / classes (Servlet geht auch dorthin)) .jsp Dateien Bilder, Dateien usw. Alle WAR-Inhalte, die vorhanden sind, um ein in sich geschlossenes Modul zu erstellen.
Krieg -
Java-basierte Webanwendungen verteilen. Ein WAR hat dieselbe Dateistruktur wie eine JAR-Datei. Hierbei handelt es sich um eine einzelne komprimierte Datei, die mehrere darin gebündelte Dateien enthält.
Krug -
Die JAR-Dateien enthalten Bibliotheken, Ressourcen und Zubehördateien wie Eigenschaftendateien.
WAR-Dateien werden verwendet, um JSPs, Servlets, Java-Klassendateien, XML-Dateien, Javascript-Bibliotheken, JAR-Bibliotheken, statische Webseiten und andere zum Ausführen der Anwendung erforderliche Ressourcen zu kombinieren.
Jar : - jar enthält nur .class war : - war enthält html, js, css und .class auch jsp und servlets seiten
Mit JAR-Dateien können mehrere Dateien gepackt werden, um sie als Bibliothek, Plugin oder Anwendung zu verwenden. Andererseits werden WAR-Dateien nur für Webanwendungen verwendet.
JAR kann mit jeder gewünschten Struktur erstellt werden. Im Gegensatz dazu hat WAR eine vordefinierte Struktur mit den Verzeichnissen WEB-INF und META-INF.
Mit einer JAR-Datei kann Java Runtime Environment (JRE) eine gesamte Anwendung einschließlich der Klassen und der zugehörigen Ressourcen in einer einzigen Anforderung bereitstellen. Andererseits ermöglicht eine WAR-Datei das einfache Testen und Bereitstellen einer Webanwendung.
Eine JAR-Dateierweiterung ist .jar und wird mit dem Befehl jar an der Eingabeaufforderung erstellt (so wie der Befehl javac ausgeführt wird). Im Allgemeinen enthält eine JAR-Datei Java-bezogene Ressourcen wie Bibliotheken, Klassen usw. Die JAR-Datei ähnelt einer Winzip-Datei, mit der Ausnahme, dass Jar-Dateien plattformunabhängig sind.
Eine WAR-Datei ist einfach eine JAR-Datei, enthält jedoch nur webbezogene Java-Dateien wie Servlets, JSP, HTML.
Zum Ausführen einer WAR-Datei ist ein Webserver oder Webcontainer erforderlich, z. B. Tomcat oder Weblogic oder Websphere. Um eine JAR-Datei auszuführen, reicht ein einfaches JDK aus.