Guerre de Java contre jar – quelle est la différence?

Quelle est la différence entre un fichier .jar et un fichier .war ? Est-ce seulement l’extension de fichier ou y a-t-il quelque chose de plus?

From Java Tips: Différence entre les fichiers ear jar et war :

Ces fichiers sont simplement des fichiers zippés utilisant l’outil java jar. Ces fichiers sont créés à des fins différentes. Voici la description de ces fichiers:

  • Fichiers .jar: Les fichiers .jar contiennent des bibliothèques, des ressources et des fichiers accessoires tels que des fichiers de propriétés.

  • Fichiers .war: Le fichier war contient l’application Web pouvant être déployée sur n’importe quel conteneur servlet / jsp. Le fichier .war contient les fichiers jsp, html, javascript et autres fichiers nécessaires au développement d’applications Web.


Description officielle de Sun / Oracle:

  • Le tutoriel J2EETM: Archives d’applications Web
  • Le format de fichier Java Archive (JAR): les bases

Articles de Wikipedia:

  • Format de fichier WAR (Sun)
  • Fichier JAR

Un fichier .war a une structure spécifique en ce qui concerne l’emplacement de certains fichiers. A part ça, oui, c’est juste un .jar .

La principale différence entre un JAR et un WAR est qu’un JAR n’est pas vraiment un format à usage unique, alors qu’un WAR est. Avec un fichier JAR, vous pouvez empaqueter de nombreuses choses différentes. Habituellement, vous empaquetez des classes Java, mais vous pouvez mettre à peu près n’importe quoi dans un fichier JAR, et vous pouvez créer des fichiers JAR dotés des formats de fichiers et de répertoires souhaités. Par exemple, Oracle (au moins en 8.1.x) utilise en fait des fichiers JAR pour dissortingbuer le logiciel Oracle sur les CD d’installation, et IBM les utilise pour dissortingbuer une version installable de la documentation de WebSphere. Techniquement, vous pouvez placer des pages JSP, des pages HTML, des classes de servlets, etc. dans un JAR, mais vous ne le faites généralement pas – vous utilisez un WAR.

Les fichiers WAR sont des fichiers JAR au format spécifique. Ce format est défini dans la spécification de servlet (que vous pouvez consulter sur le site java.sun.com). Essentiellement, le fichier WAR est un format standard pour les applications Web comportant des répertoires et des fichiers spécifiques. Cela inclut un répertoire WEB-INF, un fichier WEB-INF / web.xml utilisé pour décrire l’application, un répertoire WEB-INF / lib pour les fichiers JAR utilisés par l’application et un répertoire WEB-INF / classes pour les fichiers de classe. ne sont pas dissortingbués dans un JAR. Vous placeriez également les pages (JSP et HTML) dans WAR. Ensuite, vous pouvez dissortingbuer votre application sous la forme d’un fichier unique, au lieu d’une collection d’images, de pages HTML et de classes Java.

Vous ajoutez des composants Web à une application J2EE dans un package appelé archive d’application Web (WAR), qui est un JAR similaire au package utilisé pour les bibliothèques de classes Java. Un WAR contient généralement d’autres ressources que les composants Web, notamment:

  • Classes d’utilitaires côté serveur (beans de firebase database, paniers d’achat, etc.).
  • Ressources Web statiques (fichiers HTML, image et son, etc.)
  • Classes côté client (applets et classes d’utilitaires)

Un WAR a une structure de répertoire hiérarchique spécifique. Le répertoire de niveau supérieur d’un fichier WAR correspond à la racine du document de l’application. La racine du document est l’endroit où les pages JSP, les classes et les archives côté client et les ressources Web statiques sont stockées.

( source )

Ainsi, un fichier .war est un fichier .jar, mais il contient des composants d’application Web et est organisé selon une structure spécifique. Un fichier .war est conçu pour être déployé sur un serveur d’applications Web tel que Tomcat ou Jetty ou sur un serveur Java EE tel que JBoss ou Glassfish.

Un fichier .war est une archive d’application Web qui s’exécute à l’intérieur d’un serveur d’applications alors qu’un fichier .jar correspond à Java Application Archive qui exécute une application de bureau sur la machine d’un utilisateur.

Un fichier war est un fichier jar spécial utilisé pour empaqueter une application Web afin de faciliter son déploiement sur un serveur d’applications. Le contenu du fichier war doit suivre une structure définie.

.jar et .war sont tous deux des fichiers archivés compressés. Les deux peuvent avoir le fichier manifeste optionnel META-INF / MANIFEST.MF qui contient des informations informatives comme le contrôle de version et des atsortingbuts d’instruction tels que classpath et class-class pour la JVM qui l’exécutera.

Fichier .war – L’archive d’application Web destinée à être exécutée à l’intérieur d’un «conteneur de servlets» peut inclure d’autres fichiers jar (au répertoire WEB-INF / lib) dans les classes compilées (à WEB-INF / classes (le servlet s’y rend également)) .jsp fichiers images, fichiers etc. Tous les contenus WAR présents pour créer un module autonome.

EAR est une archive d’application d’entreprise et peut contenir des fichiers JAR, des fichiers WAR et des fichiers RAR (connecteur) ejb. Ils peuvent également contenir des bibliothèques tierces – mais vous devez savoir comment manipuler les fonctions d’extension Java (par exemple la directive MANIFEST.MF Class-Path) pour que cela fonctionne correctement.

WAR est une archive d’application Web et contient des fichiers JSP, des fichiers HTTP “normaux” (HTML, images, etc.), des servlets, des bibliothèques de balises.

JAR est l’archive Java Application “normale”, mais dans ce contexte, il contient généralement des EJB plutôt que des bibliothèques de code ou des applications exécutables (par exemple, en dehors d’un conteneur d’application).

war et jar sont des archives pour les fichiers java. war est une archive Web et ils s’exécutent sur un serveur Web. jar est une archive java.

Basiquement les deux archives compressées. war est utilisé pour les applications Web avec une structure de répertoires spécifique.

Les fichiers Jar (fichiers avec une extension .jar) sont destinés à contenir des bibliothèques génériques de classes Java, de ressources, de fichiers auxiliaires, etc. Les fichiers War (fichiers avec une extension .war) sont destinés à contenir des applications Web complètes. Dans ce contexte, une application Web est définie comme un groupe unique de fichiers, classes, ressources, fichiers .jar pouvant être empaquetés et accessibles sous la forme d’un seul contexte de servlet.

Guerre –

dissortingbuer des applications Web basées sur Java. Un fichier WAR a la même structure de fichier qu’un fichier JAR, qui est un fichier compressé unique contenant plusieurs fichiers regroupés à l’intérieur.

Jar –

Les fichiers .jar contiennent des bibliothèques, des ressources et des fichiers d’accessoires tels que des fichiers de propriétés.

Les fichiers WAR sont utilisés pour combiner des JSP, des servlets, des fichiers de classe Java, des fichiers XML, des bibliothèques javascript, des bibliothèques JAR, des pages Web statiques et toute autre ressource nécessaire à l’exécution de l’application.