Maison  >  Article  >  Java  >  Quelle est la différence entre le package jar et le package war en Java ?

Quelle est la différence entre le package jar et le package war en Java ?

青灯夜游
青灯夜游original
2019-04-23 10:58:027665parcourir

En Java, les packages jar et les packages war peuvent essentiellement être considérés comme des fichiers compressés, alors quelles sont les différences entre eux ? L'article suivant vous amènera à comprendre les packages jar et les packages war, et à présenter les différences entre les packages jar et les packages war. J'espère qu'il vous sera utile. [Recommandation du didacticiel vidéo : Tutoriel Java]

Quelle est la différence entre le package jar et le package war en Java ?

package jar

Simple Pour parler franchement, JAR (Java Archive) est un format de fichier de package. Les fichiers JAR ont une extension .jar et peuvent contenir des bibliothèques, des ressources et des fichiers de métadonnées.

Essentiellement, il s'agit d'un fichier compressé qui contient des versions compressées de fichiers .class et des bibliothèques Java et des ressources d'application compilées.

Par exemple, voici une structure de fichier JAR simple :

META-INF/
    MANIFEST.MF
com/
    baeldung/
        MyApplication.class

où le fichier META-INF/manifest.mf peut contenir des métadonnées supplémentaires sur les fichiers stockés dans les données d'archive.

Nous pouvons utiliser la commande jar ou des outils tels que maven pour créer des fichiers jar.

package war

war représente une archive d'application Web ou une ressource d'application Web. Ces fichiers d'archive ont l'extension .war et sont utilisés pour empaqueter des applications Web que nous pouvons déployer sur n'importe quel conteneur servlet/jsp.

Ce qui suit est un exemple de la disposition d'une structure de fichier WAR typique :

META-INF/
    MANIFEST.MF
WEB-INF/
    web.xml
    jsp/
        helloWorld.jsp
    classes/
        static/
        templates/
        application.properties
    lib/
        // *.jar files as libs

En interne, il possède un répertoire META-INF qui contient des informations sur les archives Web dans manifest.mf Utile information. Le répertoire META-INF est privé et n'est pas accessible de l'extérieur.

D'autre part, il contient également le répertoire public WEB-INF, qui contient toutes les ressources Web statiques, y compris les pages HTML, les images et les fichiers JS. De plus, il contient des fichiers web.xml, des classes de servlet et des bibliothèques.

Nous pouvons créer le fichier war en utilisant les mêmes outils et commandes que ceux que nous avons utilisés pour créer le JAR.

La différence entre le package jar et le package war en java

Différentes extensions de fichiers

Les JAR ont une extension .jar, tandis que les fichiers WAR ont une extension .war.

2. Différents objectifs et modes de fonctionnement

Les fichiers JAR nous permettent de regrouper plusieurs fichiers afin de les utiliser comme bibliothèques, plug-ins ou tout type d'application. . D'un autre côté, les fichiers WAR ne sont utilisés que pour les applications Web. Un package war peut être compris comme un projet Web, qui contient tout ce qui concerne le projet. .

3. La structure du fichier est également différente

Nous pouvons créer un JAR avec n'importe quelle structure souhaitée. En revanche, WAR possède une structure prédéfinie de répertoires WEB-INF et META-INF.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn