code: public static void pack(File sourceDir, File targetZip, NameMapper mapper) {
      pack(sourceDir, targetZip, mapper, DEFAULT_COMPRESSION_LEVEL);
    }
docs: Compresses the given directory and all its sub-directories into a ZIP file.
  <p>
  The ZIP file must not be a directory and its parent directory must exist.
  
  @param sourceDir
  root directory.
  @param targetZip
  ZIP file that will be created or overwritten.
  @param mapper
  call-back for renaming the entries.