ProGuard is an open source, free, platform-independent graphical application written in the Java programming language and designed to act as an optimizer, obfuscator, preverifier, and shrinker for Java class files.
Can be used to detect and remove unused Java classes
The ProGuard can be used by developers to detect and remove unused Java classes, attributes, methods, and fields from their projects. It can also be used to effortlessly optimize bytecode, as well as to remove unused instructions.
In addition, the ProGuard software can be used to rename Java classes, methods, and fields using short meaningless names, generating jar files that are smaller, as well as harder to reverse-engineer.
Requires no installation
Those of you who want to test drive the ProGuard application right away, should download the latest release, saving the archive somewhere on their personal computers (preferably the Home directory).
Use an archive manager utility to uncompress the archive, then open a Terminal app and navigate to the location of the ‘examples’ folder (e.g. cd /home/softpedia/proguard5.2/examples). Run the ‘java -jar ../lib/proguard.jar @proguard.pro’ command.
To interact with its graphical user interface (GUI), open the ‘bin’ folder and double click on the ‘proguardgui.sh’ file. Alternatively, you can run the ‘sh proguardgui.sh’ command in the Terminal app, after navigating to the ‘bin’ folder (e.g. cd /home/softpedia/proguard5.2/bin).
Supported operating systems and hardware requirements
Being written in Java, ProGuard is a cross-platform application that runs well on any platform where the Java Runtime Environment (JRE) technology is available, including GNU/Linux, Microsoft Windows, and Mac OS X.
ProGuard is integrated in Google's Android SDK (Software Development Kit), Intel's TXE SDK, as well as Oracle's Wireless Toolkit. It has been successfully tested on computers supporting either of the 32 or 64-bit CPU architectures.