Java ARchive. Jar désigne également un récipient (bouteille, bocal, etc.) en anglais.
Archiver/packager des ressources/extensions/applications Java.
Les fichiers JAR peuvent être très simples (regroupement de classes) mais leur contenu peut aussi être spécialisé pour des lecteurs spéciaux (conteneurs EJB, Web, d'Applets, etc.).
ejb-jar | WAR | RAR | EAR | Applet | |
---|---|---|---|---|---|
Contenu |
|
|
|
|
|
Commentaire | Représente un module EJB | Web Archive. Représente une WebApp (module Web J2EE) et contient les classes nécessaires à ses Servlets et/ou JSP | Resource ARchive, contenant les classes nécessaires à un connecteur JCA |
Enterprise ARchive, représentant une application J2EE (contenant des modules ejb-jar et/ou war et/ou rar et/ou client. | L'applet peut ainsi être téléchargée en une seule requête HTTP (téléchargeant le fichier JAR) au lieu de n (1 pour récupérer chaque classe, image... nécessaire à l'applet). |
La structure standard d'un fichier JAR est la suivante (tout est optionnel et des ajouts sont possibles, voir les exemples) :
META-INF
(en majuscules obligatoirement)
MANIFEST.MF
: Définition des données du package et d'extension.INDEX.LIST
: Généré par l'option "-i" de l'outil jar, contenenant l'information de localisation
des packages définis dans une application ou une extension..SF
: Fichier de signature xxx.
DSA
: Fichier de bloc de
signature
numérique pour le fichier yyy.services/
Il est possible d'accéder à des fichiers JAR via l'API standard fournie dans
J2SE dans le package <a href="https://java.sun.com/j2se/1.4.1/docs/api/java/util/jar/package-summary.html">java.util.jar</a>
.
Class-Path
de son fichier Manifest.