Para crear un archivo ZIP en Java no requerimos importar librerías adicionales en Maven, el paquete util provee de las clases necesarias para crear un archivo ZIP.
import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.util.zip.ZipEntry; import java.util.zip.ZipOutputStream;
Usaremos un archivo cualquiera para comprimir.

El código:
package com.decodigo;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.zip.ZipEntry;
import java.util.zip.ZipOutputStream;
/**
*
* @author decodigo.com
*/
public class CrearZip {
public static void main( String[] args )
{
byte[] buffer = new byte[1024];
try{
FileOutputStream fos = new FileOutputStream("/ruta_archivos/archivo_zip.zip");
ZipOutputStream zos = new ZipOutputStream(fos);
ZipEntry ze= new ZipEntry("ExcelEjemplo.xlsx");
zos.putNextEntry(ze);
FileInputStream in = new FileInputStream("/ruta_archivos/ExcelEjemplo.xlsx");
int len;
while ((len = in.read(buffer)) > 0) {
zos.write(buffer, 0, len);
}
in.close();
zos.closeEntry();
zos.close();
System.out.println("Hecho");
}catch(IOException ex){
ex.printStackTrace();
}
}
}
Las líneas en las que debes poner especial atención son las siguientes:
La clase FileOutputStream es usada para crear el archivo ZIP con nuestros archivos, que en este caso sólo es uno.
FileOutputStream fos = new FileOutputStream("/ruta_archivos/archivo_zip.zip");
La clase ZipOutputStream permite comprimir cada una de las entradas generadas a partir de la clase ZipEntry con el nombre del archivo original o el que desees. Desde luego hay que crear un FileInputStream donde especificamos la ruta del archivo que queremos comprimir.
ZipOutputStream zos = new ZipOutputStream(fos);
ZipEntry ze= new ZipEntry("ExcelEjemplo.xlsx");
zos.putNextEntry(ze);
FileInputStream in = new FileInputStream("/ruta_archivos/ExcelEjemplo.xlsx");
Escribiremos el contenido de nuestro archivo fuente con la función write y ZipOutputStream se encarga de hacer la compresión.
int len;
while ((len = in.read(buffer)) > 0) {
zos.write(buffer, 0, len);
}
in.close();
zos.closeEntry();
zos.close();
No olvides cerrar los streams y la entrada.
Si corremos el ejemplo obtenemos los siguiente:

El archivo archivo_zip.zip contendrá al archivo de ejemplo y desde luego tu puedes usar cualquier otro.
Esperamos que este ejemplo de crear un archivo ZIP en Java te sea de utilidad.
Más información en inglés: https://geekole.com/create-zip-files-in-java/