import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.ArrayList;
import java.util.zip.ZipEntry;
import java.util.zip.ZipInputStream;
import java.util.zip.ZipOutputStream;

/*
Добавление файла в архив
*/
public class Solution {
    public static void main(String[] args) throws IOException {
        FileInputStream zipFile = new FileInputStream(args[1]);
        ZipInputStream zip = new ZipInputStream(zipFile);
        ArrayList<ZipEntry> list = new ArrayList<>();
        ArrayList<Path> list1 = new ArrayList<>();
        ZipEntry entry;
        while ((entry = zip.getNextEntry()) != null)
        {
            if (("new/" + Paths.get(args[0]).getFileName()).equals(entry.getName()))
            {
                zip.closeEntry();
            }
                else
                {
            list.add(0, entry);
            list1.add(0, Files.createTempFile("temp-",".tmp"));
            FileOutputStream fileOutputStream = new FileOutputStream(list1.get(0).toFile());
            while (zip.available() > 0)
            {
            fileOutputStream.write(zip.read());
            }
            fileOutputStream.close();
                }
        }
        zip.close();
        zipFile.close();
        FileOutputStream zipFile1 = new FileOutputStream(args[1]);
        ZipOutputStream zip1 = new ZipOutputStream(zipFile1);
        zip1.putNextEntry(new ZipEntry("new/" + Paths.get(args[0]).getFileName()));
        Files.copy(Paths.get(args[0]), zip1);
        for(int i = 0; i < list.size(); i++)
        {
            zip1.putNextEntry(new ZipEntry(list.get(i).getName()));
            FileInputStream inputStream = new FileInputStream(list1.get(i).toString());
            while (inputStream.available() > 0)
            {
                zip1.write(inputStream.read());
            }
            inputStream.close();
            zip1.closeEntry();
        }
        zip1.close();
        zipFile1.close();
    }
}
Если кто-то сможет разъяснить что не так, то буду очень благодарен)