Java class file shrinker, optimizer, obfuscator, and preverifier

ProGuard is a free Java class file shrinker, optimizer, obfuscator,
and preverifier. It detects and removes unused classes, fields,
methods, and attributes. It optimizes bytecode and removes unused
instructions. It renames the remaining classes, fields, and
methods using short meaningless names. Finally, it preverifies
the processed code for Java 6 or for Java Micro Edition. Some
uses of ProGuard are: - Creating more compact code, for smaller
code archives, faster transfer across networks, faster loading,
and smaller memory footprints.

- Making programs and libraries harder to reverse-engineer.

- Listing dead code, so it can be removed from the source code.

- Retargeting and preverifying existing class files for Java 6, to
take full advantage of Java 6's faster class loading.

- ProGuard's main advantage compared to other Java obfuscators is
probably its compact template-based configuration. A few
intuitive command line options or a simple configuration file are
usually sufficient. For instance, the following configuration
option preserves all applets in a jar: -keep public class *
extends java.applet.Applet

The user manual explains all available options and shows more examples
of this powerful configuration style. ProGuard is fast. It only takes
seconds to process programs and libraries of several megabytes. The
results section presents actual figures for a number of applications.
ProGuard is a command-line tool with an optional graphical user
interface.

Refresh
Refresh
Source Files
Filename Size Changed Actions
proguard.changes 0000001317 1.29 KB over 1 year
proguard.manifest 0000000030 30 Bytes about 11 years
proguard.sh 0000000068 68 Bytes about 11 years
proguard.spec 0000009632 9.41 KB over 1 year
proguard6.0.3.tar.gz 0002712011 2.59 MB over 1 year
proguardgui.manifest 0000000037 37 Bytes about 11 years
proguardgui.sh 0000000097 97 Bytes about 11 years
Comments for proguard 0