Class JarEntry

All Implemented Interfaces:
Cloneable

public class JarEntry extends ZipEntry
This class is used to represent a JAR file entry.
Since:
1.2
  • Field Summary Link icon

    Fields
    Modifier and Type
    Field
    Description
    static final int
    Central directory (CEN) header internal file attributes field offset.
    static final int
    Central directory (CEN) header external file attributes field offset.
    static final int
    Central directory (CEN) header comment length field offset.
    static final int
    Central directory (CEN) header uncompressed file crc-32 value field offset.
    static final int
    Central directory (CEN) header disk number start field offset.
    static final int
    Central directory (CEN) header extra field length field offset.
    static final int
    Central directory (CEN) header encrypt, decrypt flags field offset.
    static final int
    Central directory (CEN) header size in bytes (including signature).
    static final int
    Central directory (CEN) header compression method field offset.
    static final int
    Central directory (CEN) header uncompressed size field offset.
    static final int
    Central directory (CEN) header filename length field offset.
    static final int
    Central directory (CEN) header LOC header offset field offset.
    static final long
    Central directory (CEN) header signature.
    static final int
    Central directory (CEN) header compressed size field offset.
    static final int
    Central directory (CEN) header modification time field offset.
    static final int
    Central directory (CEN) header version made by field offset.
    static final int
    Central directory (CEN) header version needed to extract field offset.
    static final int
    End of central directory (END) header ZIP file comment length field offset.
    static final int
    End of central directory (END) header size in bytes (including signature).
    static final int
    End of central directory (END) header offset for the first CEN header field offset.
    static final long
    End of central directory (END) header signature.
    static final int
    End of central directory (END) header central directory size in bytes field offset.
    static final int
    End of central directory (END) header number of entries on this disk field offset.
    static final int
    End of central directory (END) header total number of entries field offset.
    static final int
    Extra local (EXT) header uncompressed file crc-32 value field offset.
    static final int
    Extra local (EXT) header size in bytes (including signature).
    static final int
    Extra local (EXT) header uncompressed size field offset.
    static final long
    Extra local (EXT) header signature.
    static final int
    Extra local (EXT) header compressed size field offset.
    static final int
    Local file (LOC) header uncompressed file crc-32 value field offset.
    static final int
    Local file (LOC) header extra field length field offset.
    static final int
    Local file (LOC) header general purpose bit flag field offset.
    static final int
    Local file (LOC) header size in bytes (including signature).
    static final int
    Local file (LOC) header compression method field offset.
    static final int
    Local file (LOC) header uncompressed size field offset.
    static final int
    Local file (LOC) header filename length field offset.
    static final long
    Local file (LOC) header signature.
    static final int
    Local file (LOC) header compressed size field offset.
    static final int
    Local file (LOC) header modification time field offset.
    static final int
    Local file (LOC) header version needed to extract field offset.

    Fields declared in class ZipEntry Link icon

    DEFLATED, STORED
  • Constructor Summary Link icon

    Constructors
    Constructor
    Description
    Creates a new JarEntry for the specified JAR file entry name.
    Creates a new JarEntry with fields taken from the specified JarEntry object.
    Creates a new JarEntry with fields taken from the specified ZipEntry object.
  • Method Summary Link icon

    Modifier and Type
    Method
    Description
    Returns the Manifest Attributes for this entry, or null if none.
    Returns the Certificate objects for this entry, or null if none.
    Returns the CodeSigner objects for this entry, or null if none.
    Returns the real name of this JarEntry.

    Methods declared in class Object Link icon

    equals, finalize, getClass, notify, notifyAll, wait, wait, wait
  • Field Details Link icon

    • LOCSIG Link icon

      static final long LOCSIG
      Local file (LOC) header signature.
      See Also:
    • EXTSIG Link icon

      static final long EXTSIG
      Extra local (EXT) header signature.
      See Also:
    • CENSIG Link icon

      static final long CENSIG
      Central directory (CEN) header signature.
      See Also:
    • ENDSIG Link icon

      static final long ENDSIG
      End of central directory (END) header signature.
      See Also:
    • LOCHDR Link icon

      static final int LOCHDR
      Local file (LOC) header size in bytes (including signature).
      See Also:
    • EXTHDR Link icon

      static final int EXTHDR
      Extra local (EXT) header size in bytes (including signature).
      See Also:
    • CENHDR Link icon

      static final int CENHDR
      Central directory (CEN) header size in bytes (including signature).
      See Also:
    • ENDHDR Link icon

      static final int ENDHDR
      End of central directory (END) header size in bytes (including signature).
      See Also:
    • LOCVER Link icon

      static final int LOCVER
      Local file (LOC) header version needed to extract field offset.
      See Also:
    • LOCFLG Link icon

      static final int LOCFLG
      Local file (LOC) header general purpose bit flag field offset.
      See Also:
    • LOCHOW Link icon

      static final int LOCHOW
      Local file (LOC) header compression method field offset.
      See Also:
    • LOCTIM Link icon

      static final int LOCTIM
      Local file (LOC) header modification time field offset.
      See Also:
    • LOCCRC Link icon

      static final int LOCCRC
      Local file (LOC) header uncompressed file crc-32 value field offset.
      See Also:
    • LOCSIZ Link icon

      static final int LOCSIZ
      Local file (LOC) header compressed size field offset.
      See Also:
    • LOCLEN Link icon

      static final int LOCLEN
      Local file (LOC) header uncompressed size field offset.
      See Also:
    • LOCNAM Link icon

      static final int LOCNAM
      Local file (LOC) header filename length field offset.
      See Also:
    • LOCEXT Link icon

      static final int LOCEXT
      Local file (LOC) header extra field length field offset.
      See Also:
    • EXTCRC Link icon

      static final int EXTCRC
      Extra local (EXT) header uncompressed file crc-32 value field offset.
      See Also:
    • EXTSIZ Link icon

      static final int EXTSIZ
      Extra local (EXT) header compressed size field offset.
      See Also:
    • EXTLEN Link icon

      static final int EXTLEN
      Extra local (EXT) header uncompressed size field offset.
      See Also:
    • CENVEM Link icon

      static final int CENVEM
      Central directory (CEN) header version made by field offset.
      See Also:
    • CENVER Link icon

      static final int CENVER
      Central directory (CEN) header version needed to extract field offset.
      See Also:
    • CENFLG Link icon

      static final int CENFLG
      Central directory (CEN) header encrypt, decrypt flags field offset.
      See Also:
    • CENHOW Link icon

      static final int CENHOW
      Central directory (CEN) header compression method field offset.
      See Also:
    • CENTIM Link icon

      static final int CENTIM
      Central directory (CEN) header modification time field offset.
      See Also:
    • CENCRC Link icon

      static final int CENCRC
      Central directory (CEN) header uncompressed file crc-32 value field offset.
      See Also:
    • CENSIZ Link icon

      static final int CENSIZ
      Central directory (CEN) header compressed size field offset.
      See Also:
    • CENLEN Link icon

      static final int CENLEN
      Central directory (CEN) header uncompressed size field offset.
      See Also:
    • CENNAM Link icon

      static final int CENNAM
      Central directory (CEN) header filename length field offset.
      See Also:
    • CENEXT Link icon

      static final int CENEXT
      Central directory (CEN) header extra field length field offset.
      See Also:
    • CENCOM Link icon

      static final int CENCOM
      Central directory (CEN) header comment length field offset.
      See Also:
    • CENDSK Link icon

      static final int CENDSK
      Central directory (CEN) header disk number start field offset.
      See Also:
    • CENATT Link icon

      static final int CENATT
      Central directory (CEN) header internal file attributes field offset.
      See Also:
    • CENATX Link icon

      static final int CENATX
      Central directory (CEN) header external file attributes field offset.
      See Also:
    • CENOFF Link icon

      static final int CENOFF
      Central directory (CEN) header LOC header offset field offset.
      See Also:
    • ENDSUB Link icon

      static final int ENDSUB
      End of central directory (END) header number of entries on this disk field offset.
      See Also:
    • ENDTOT Link icon

      static final int ENDTOT
      End of central directory (END) header total number of entries field offset.
      See Also:
    • ENDSIZ Link icon

      static final int ENDSIZ
      End of central directory (END) header central directory size in bytes field offset.
      See Also:
    • ENDOFF Link icon

      static final int ENDOFF
      End of central directory (END) header offset for the first CEN header field offset.
      See Also:
    • ENDCOM Link icon

      static final int ENDCOM
      End of central directory (END) header ZIP file comment length field offset.
      See Also:
  • Constructor Details Link icon

    • JarEntry Link icon

      public JarEntry(String name)
      Creates a new JarEntry for the specified JAR file entry name.
      Parameters:
      name - the JAR file entry name
      Throws:
      NullPointerException - if the entry name is null
      IllegalArgumentException - if the entry name is longer than 0xFFFF bytes.
    • JarEntry Link icon

      public JarEntry(ZipEntry ze)
      Creates a new JarEntry with fields taken from the specified ZipEntry object.
      Parameters:
      ze - the ZipEntry object to create the JarEntry from
      Throws:
      NullPointerException - if ze is null
    • JarEntry Link icon

      public JarEntry(JarEntry je)
      Creates a new JarEntry with fields taken from the specified JarEntry object.
      Parameters:
      je - the JarEntry to copy
      Throws:
      NullPointerException - if je is null
  • Method Details Link icon

    • getAttributes Link icon

      public Attributes getAttributes() throws IOException
      Returns the Manifest Attributes for this entry, or null if none.
      Returns:
      the Manifest Attributes for this entry, or null if none
      Throws:
      IOException - if an I/O error has occurred
    • getCertificates Link icon

      public Certificate[] getCertificates()
      Returns the Certificate objects for this entry, or null if none. This method can only be called once the JarEntry has been completely verified by reading from the entry input stream until the end of the stream has been reached. Otherwise, this method will return null.

      It is recommended to use the getCodeSigners() method instead, which returns an array of CodeSigners.

      The returned certificate array comprises all the signer certificates that were used to verify this entry. Each signer certificate is followed by its supporting certificate chain (which may be empty). Each signer certificate and its supporting certificate chain are ordered bottom-to-top (i.e., with the signer certificate first and the (root) certificate authority last).

      API Note:
      The verification process does not include validating or establishing trust in the code signers. A caller should perform additional checks, such as using a CertPathValidator to validate each signer's certificate chain, and determining whether to trust the entry signed by the signers.
      Returns:
      the Certificate objects for this entry, or null if none.
    • getCodeSigners Link icon

      public CodeSigner[] getCodeSigners()
      Returns the CodeSigner objects for this entry, or null if none. This method can only be called once the JarEntry has been completely verified by reading from the entry input stream until the end of the stream has been reached. Otherwise, this method will return null.

      The returned array comprises all the code signers that have signed this entry.

      API Note:
      The verification process does not include validating or establishing trust in the code signers. A caller should perform additional checks, such as using a CertPathValidator to validate each signer's certificate chain, and determining whether to trust the entry signed by the signers.
      Returns:
      the CodeSigner objects for this entry, or null if none.
      Since:
      1.5
    • getRealName Link icon

      public String getRealName()
      Returns the real name of this JarEntry. If this JarEntry is an entry of a multi-release jar file and the JarFile is configured to be processed as such, the name returned by this method is the path name of the versioned entry that the JarEntry represents, rather than the path name of the base entry that ZipEntry.getName() returns. If the JarEntry does not represent a versioned entry of a multi-release JarFile or the JarFile is not configured for processing a multi-release jar file, this method returns the same name that ZipEntry.getName() returns.
      Returns:
      the real name of the JarEntry
      Since:
      10