Obfuscation Parameters


Parameter Effect Notes
-max Turns on maximum obfuscation. Crema will replace meaningful symbols with extra confusing symbols, such as keywords and operators. Crema will also add bogus debugging information to your class files. This option will, on average, slightly increase the size of your class files.
-ill Makes Crema produce illegal identifiers, such as class names consisting entirely of digits and member names containing spaces.
Do not use this option for applets!
This option can only be used for applications as some browsers will reject applets with illegal identifiers.
This option is always turned on in the evaluation version.
-pub Obfuscates public classes and members. Normally Crema leaves public classes and members alone, so that they can still be referenced. Use this option in combination with the -xc and -xm options.
-xc className Excludes the specified class from obfuscation. The class name should be fully qualified with the package name (if any).  
-xm memberName Excludes the specified member from obfuscation. The member name should be fully qualified with the class name and the package name (if any). You can exclude both fields and methods with this parameter. If more than one member exists with the given name, all will be excluded.
-msg "text" Specifies a (copyright or other) message to be inserted in the obfuscated classes. This message will be printed by Mocha when it decompiles the class. Multiple lines can be inserted by using multiple -msg switches. If you do not specify a message, Crema inserts the standard message:
WARNING: Decompilation of this software is a violation of the license agreement
-nomsg Suppresses the inclusion of a (standard or custom) message in obfuscated classes.  
-nobomb Suppresses the inclusion of a "bomb" in the obfuscated classes. The "bomb" causes Mocha to crash when it attempts to decompile the class. If you do not suppress the bomb, Mocha will crash before it can print the message.
-lnt Tells Crema to preserve (i.e. not remove) the LineNumberTable attributes. Use this parameter if you want exception stack trace-backs to include linenumbers. This parameter has no effect if no LineNumberTable attributes were produced by the compiler, e.g. when using the -O compiler option.

<< Copyright © 1996 Hanpeter van Vliet >>