Peter Uhnak created MEAR-298:
--------------------------------
Summary: Improving EAR packaging performance with ZipFileSystem
Key: MEAR-298
URL: https://issues.apache.org/jira/browse/MEAR-298
Project: Maven EAR Plugin
Issue Type: Improvement
Reporter: Peter Uhnak
Hi, I was exploring performance around the ear packaging on Windows, and found
a major bottleneck in the `EarMojo#changeManifestClasspath`.
The current implementation always unpacks and then re-packs all its modules to
check/make manifest.mf changes, and remove jars if necessary (skinnyWars).
On Windows, this is extra costly for modules with too many small files (e.g.
war). Plus the extra time of uncompressing/compressing. (This also changes the
war's compression, if configured in the maven-war-plugin).
I have a working implementation using nio ZipFileSystem which performs all
changes directly in the zip, so I can make a PR.
For our projects I'm seeing 70-90+% perf improvements (or rather near-constant
time vs time increasing with the size of the modules).
--
This message was sent by Atlassian Jira
(v8.3.4#803005)