Autojar creates jar archives of minimal size from different sources (classes, directories, libraries). Starting from one or more classes, it scans the bytecode recursively for other classes, extracts them from their archives if necessary, and adds them to the output file. The resulting archive contains only classes that are really needed. Thus the size and loading time of applets can be kept low, and applications can be made self-contained.
In a similar way, Autojar can search directories and archives for other resources (like image files), extract them and copy them to the output.
Besides that, Autojar can be used to merge several libraries into one, or to replace single classes in an archive without manually unpacking and re-packing it.
A potential problem is reflection. Autojar doesn't know which
classes the program will load during runtime. It can, however, search
the bytecode for invocations of
As of version 2.0, Autojar comes in two variants: A command line version, which is controlled by options, and an Eclipse plugin.
Please report bugs via the SourceForge bug system.