code: public static void addEntries(File zip, ZipEntrySource[] entries, File destZip) {
      if (log.isDebugEnabled()) {
        log.debug("Copying '" + zip + "' to '" + destZip + "' and adding " + Arrays.asList(entries) + ".");
      }
  
      OutputStream destOut = null;
      try {
        destOut = new BufferedOutputStream(new FileOutputStream(destZip));
        addEntries(zip, entries, destOut);
      }
      catch (IOException e) {
        ZipExceptionUtil.rethrow(e);
      }
      finally {
        IOUtils.closeQuietly(destOut);
      }
    }
docs: Copies an existing ZIP file and appends it with new entries.
  
  @param zip
  an existing ZIP file (only read).
  @param entries
  new ZIP entries appended.
  @param destZip
  new ZIP file created.