JAR (formato di file)
archivio dati compresso (ZIP) usato per distribuire raccolte di classi Java
Un archivio Java[1] (o JAR[1], abbreviazione di Java archive[2]) è un file archivio contenente classi Java e altre risorse necessarie all'esecuzione di applicazioni o applet.[1]
Archivio Java | |
---|---|
Estensione | .jar
|
Tipo MIME | application/java-archive
|
Type code (Mac OS) | com.sun.java-archive
|
Sviluppatore | Netscape, Sun Microsystems, Oracle |
Tipo | File archivio |
Estensione di | ZIP |
Il formato è basato su ZIP[3], sebbene contenga una directory denominata "META-INF".[4] Nei sistemi operativi Microsoft Windows e Solaris, in presenza di un Java Runtime Environment, vengono trattati come eseguibili.[2]
Descrizione
modificaVantaggi
modificaL'utilizzo di questi archivi ha molteplici benefici:
- Compressione: con l'archiviazione si riesce a ridurre sensibilmente il numero di file arrivando anche ad un unico file jar[5]. Questo metodo, infatti, è largamente diffuso per applicazioni di tipo Applet, dato che diminuisce il tempo di caricamento e quindi il carico di rete e server[5].
- Firma: all'interno del file jar è possibile anche salvare informazioni aggiuntive come l'autore del pacchetto[6].
- Estensione: essendo l'archivio visto come package dal linguaggio, può essere espanso e quindi generare da esso altri package, classi e interfacce[5].
- Portabilità: i file compressi restano in tutto e per tutto uguali agli originali e quindi utilizzabili su tutte le piattaforme che contengono la Java Virtual Machine (JVM)[7].
- Documentazione: il programma JavaDoc è comunque in grado di autodocumentare il contenuto dell'archivio compresso [8].
Creazione di una raccolta
modificaPer la creazione di un archivio jar si utilizza la seguente istruzione da linea di comando[9]:
jar cf nomeArchivio fileOPackage
Note
modifica- ^ a b c (EN) Glossario dei concetti e delle definizioni utili, su Java, Oracle. URL consultato il 7 luglio 2023.
- ^ a b (EN) JAR File Overview, su Oracle. URL consultato il 7 luglio 2023.
- ^ (EN) java-archive, su IANA, 27 aprile 2023. URL consultato il 7 luglio 2023.
- ^ (EN) JAR File Specification, su Oracle. URL consultato il 7 luglio 2023.
- ^ a b c https://docs.oracle.com/javase/8/docs/technotes/guides/jar/jarGuide.html
- ^ https://docs.oracle.com/javase/8/docs/technotes/guides/jar/jar.html#Signed_JAR_File
- ^ https://blogs.oracle.com/javamagazine/post/how-the-jvm-locates-loads-and-runs-libraries
- ^ https://docs.oracle.com/javase/8/docs/technotes/tools/windows/javadoc.html
- ^ https://docs.oracle.com/javase/tutorial/deployment/jar/build.html
Voci correlate
modificaCollegamenti esterni
modifica- (EN) Denis Howe, JAR, in Free On-line Dictionary of Computing. Disponibile con licenza GFDL
- (EN) Java Archive (JAR) Files, su Java SE 8 Documentation, Oracle. URL consultato il 7 luglio 2023.
- (EN) JAR File Overview, su Java SE 8 Documentation, Oracle. URL consultato il 7 luglio 2023.
- (EN) JAR File Specification, su JDK 20 Documentation, Oracle. URL consultato il 7 luglio 2023.
- (EN) Lesson: Packaging Programs in JAR Files, su The Java Tutorials, Oracle. URL consultato il 7 luglio 2023.
- (EN) JEP 238: Multi-Release JAR Files, su OpenJDK.