I integrated a simplistic JAR delta
optimizer and processor with Stefan's JBdiff stuff and added some tests.
More is needed in the area but this delta is based on comparisons
of JAR entries. The delta is encoded as a JAR containing the changes
from the base. Whole entries that changed are included in the delta.
This is very simple / efficient to compute but will likely produce
larger deltas than jbdiff. Note that since the delta is just JAR
of class files, it too can be packed! ;-) Anyway, I also enhanced
One thing that remains is to unify the
code. Turns out that the pack200, jardelta and jbdiff optimizers,
processors and tests have a ton of duplicated code. Much of it is
fussy stuff like making sure that streams are closed etc. This should
all be shared. Stefan, you might want to take a stab at this? Or
I can look at it tomorrow...