Format
Java Archive Format
Summary
- Name
- Java Archive Format
- Identifiers
-
- MIME: application/java-archive
- Apple Uniform Type Identifier: com.sun.java-archive
- PUID: x-fmt/412
- Format type
- Aggregate
- Description
- JAR stands for Java ARchive. It's is based on the ZIP file format (x-fmt/26) and is used for aggregating many files into one, and reducing file size. One of the original purposes of JAR files was to bundle multiple Java applets and their requisite components (.class files, images and sounds) into a JAR file, which could then be downloaded to a browser in a single HTTP transaction; these could then be run over the web. JAR files can also be "executable" both on Linux, via a command such as `java -jar <jar-name>` and Windows, where the file-format extension '*.jar' may be associated with the Java Runtime Environment. As executable code can potentially be harmful, e.g. used in the distribution of malware, the JAR supports digital signing so that the source of the items in a JAR file can be verified. JAR consists of a zip archive, as defined by PKWARE, containing a manifest file and potentially signature files, as defined in the JAR.
- Note
- https://docs.oracle.com/javase/7/docs/technotes/guides/jar/jarGuide.html https://docs.oracle.com/javase/7/docs/technotes/guides/jar/index.html Specification: https://docs.oracle.com/javase/7/docs/technotes/guides/jar/jarGuide.html
- File extensions
-
jar - Source
- Digital Preservation Department / The National Archives
Relationships
- Has lower priority than
- Has priority over
Internal signatures
JAR format
- Note
- Local file header + manifest + end of central directory. Signature consists of two byte sequences, a BOF sequence and EOF sequence. BOF character sequence: PK..*META-INF/MANIFEST.MF, EOF character sequence: PK..
Byte sequences
- Min Frag Length
- Absolute from BOF
- Offset
- 0
- Max offset
- None
- Byte Sequence
504B0304*4D4554412D494E462F4D414E49464553542E4D46- Endianness
- None
- Min Frag Length
- Absolute from EOF
- Offset
- 18
- Max offset
- 65531
- Byte Sequence
504B0506- Endianness
- None
Container signatures
Type: ZIP
10000 - Java Archive Format
- File path
- META-INF/MANIFEST.MF
Byte sequence reference
BOFoffset
Sub sequences
- Min Frag Length
- Position
- 1
- Sub sequence min offset
- 0
- Sub sequence max offset
- 0
- Sequence
'Manifest-Version:'
Changelog
-
Updated in V118
- Release date
- 30 April 2024
Java Archive Format: Description created and documentation links added as part of PRONOM Research Week 2023. Submitted by Ross Spencer.
-
Updated in V66
- Release date
- 18 December 2012
Java Archive Format: Improved signature with assistance from Ross Spencer.
-
Updated in V60
- Release date
- 11 June 2012
Java Archive Format: Container signature statement added to record notes.
OpenDocument Spreadsheet 1.1: Container signature statement added to record notes.
-
Updated in V38
- Release date
- 1 August 2010
Java Archive Format: Signature updated as part of DROID 5.0 research to improve efficiency