Obfuscates the Java class contents of JAR files, using experimental and hopefully interesting ways.
- Class and field renaming (numeric names like
public class -345364789
andstatic int 2107639900;
for anunexpected token
error when compiling following decompilation). - Shuffles around the positions of fields, methods, annotations and other identifiers.
- Adds bogus exceptions to methods throws clause.
- Removes or replaces line numbers with random integers that can be mapped back to the original numbers.
- ObjectWeb ASM
- Google Guava
- Commons CLI
Apache License 2.0: http://www.apache.org/licenses