The Pack200 packageThe Pack200 algorithm is not a general purpose compression algorithm but one specialized for compressing JAR archives. JAR archives compressed with Pack200 will in general be different from the original archive when decompressed again. More information can be found in the Javadocs of the Pack200.Packer class. While the Pack200StrategyThe Pack200-API provided by the java class library is not
streaming friendly as it wants to consume its input completely
in a single operation. Because of this
Two different caching modes are available - "in memory", which is the default, and "temporary file". By default data is cached in memory but you should switch to the temporary file option if your archives are really big. Given there always is an intermediate result
the NormalizationAs a pack/unpack cycle may create a JAR archive that is different from the original, digital signatures created for the initial JAR will be broken by the process. There is a way to "normalize" JAR archives prior to packing them that ensures signatures applied to the "normalized" JAR will still be valid aftre a pack/unpack cycle - see Pack200.Packer's javadocs. The |