jar files contain aspects that vary when they are created. This prevents build to be reproducible and capture an uninteresting details.
timestamps with a time resolution of 2 seconds
- the files are listed the order that they were added
zipinfo -lv displays the detailed metadata of the content of the archive, suitable for this work. Careful with unzip -l, it does not display the seconds in the timestamps even though the zip format stores them.
This is taken care by strip-nondeterminism.
A thread from 2008 on a Fedora mailing list seems to be on point; they suggest a patch to the zipnote command which allows timestamps to be updated in zip files without unpacking. AFAICT, this now five-year-old patch hasn't made it into upstream Infozip, let alone Debian.