Proposal: jar option to disable compression for selected file extensions
Eirik Bjørsnøs
eirbjo at gmail.com
Mon Dec 16 11:38:29 UTC 2024
Hi,
I would like to socialize the idea of adding a new option to the jar tool
to disable ZIP compression for selected file extensions.
The jar tool currently supports disabling ZIP compression altogether for an
archive using the -0 --no-compress options.
However, different file types have different compression characteristics.
Already compressed files such as JPEG, PNG have little to gain by deflate
compression, and the compression and decompression of such files is mostly
a waste of effort. The same is true for archive formats such as ZIP, JAR,
GZ etc.
I propose that we add a new option, tentatively named "--no-compress-ext",
which would take a colon-separated list of file extensions to disable ZIP
compression for:
jar --create --file archive.jar --no-compress-ext=.jpg:.png:.gz -C dir .
This would work similarly to the zip -n option, see zip --help:
-n don't compress these suffixes
In context, the jar --help command could look something like this:
-0, --no-compress Store only; use no ZIP compression
> --no-compress-ext=EXT Disable compression for selected file
> extensions,
> e.g. "--no-compress-ext=.zip:.jar:.jpg:.png"
I specifically do not suggest that we should define any kind of default for
this option. This should be entirely up to the user.
Feedback on this proposal is welcome. (I have a draft implementation
around, but let's focus on the merits of the proposal before we dive into
any code)
Eirik.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.openjdk.org/pipermail/core-libs-dev/attachments/20241216/7c8bb7e8/attachment-0001.htm>
More information about the core-libs-dev
mailing list