-
Are you by any chance trying to run code that was compiled with a recent version of java on an older (or more constrained) version of java?
Did you try the most recent non-beta version 4.4?
Otherwise, can you mail me the obfuscated dj.class and the corresponding original compiled class?
Eric.
2010-01-07 21:05:20 UTC in ProGuard Java Optimizer and Obfuscator
-
You have a few more -keep/-keepclasseswithmembers options in your configuration. Each of those will prevent some classes from being removed and renamed. You should be able to see which options apply to which classes. You should then figure out whether these classes can be renamed without breaking the application. Notably, classes that are entry points to your application can't be renamed. I...
2010-01-05 21:36:03 UTC in ProGuard Java Optimizer and Obfuscator
-
Your configuration contains "-keep class com.somepackage.**", which will keep all classes in com.somepackage and its subpackages (in addition to the fields and methods that are also listed). If you want to have these classes renamed, you should specify -keepclassmembers instead of -keep.
Does that help?
Eric.
2010-01-03 22:45:53 UTC in ProGuard Java Optimizer and Obfuscator
-
You can specify the option -applymapping, with a mapping file that contains the following line
apackage.AClassName -> x:
Eric.
2009-12-29 21:44:55 UTC in ProGuard Java Optimizer and Obfuscator
-
As you probably know, you configure ProGuard by specifying classes that you want to keep. So, you have to think about which classes you *don't* want to rename, and then specify those with -keep options.
Note that inner classes are just like any other classes in java bytecode; only their names are like Outer$Inner. You can use this property when constructing expressions with wildcards. However,
2009-12-29 21:42:05 UTC in ProGuard Java Optimizer and Obfuscator
-
No, I don't plan to add such an option. I try to limit the number of options, and this one would bring about too many problems for anyone using it incorrectly.
Eric.
2009-12-22 22:29:35 UTC in ProGuard Java Optimizer and Obfuscator
-
The implementation in ProGuard 4.3 is different from Torbjörn's patch for ProGuard 3.x. Classes are now merged automatically, whenever possible (cfr. the implementation for details). The only option is to disable it, with "-optimizations !class/merging/*" -- cfr. ProGuard manual > Usage > Optimization Options > -optimizations.
Eric.
2009-12-22 14:28:43 UTC in ProGuard Java Optimizer and Obfuscator
-
I can seem to reproduce this problem (in Ubuntu Linux). Does the applet work without obfuscation?
Eric.
2009-12-22 12:57:30 UTC in ProGuard Java Optimizer and Obfuscator
-
Class merging has been part of ProGuard for a year now, since version 4.3 -- cfr. ProGuard FAQ and Downloads pages.
Eric.
2009-12-22 12:32:54 UTC in ProGuard Java Optimizer and Obfuscator
-
Cfr. ProGuard manual > Examples > A typical library.
That example keeps public/protected classes and class members, and obfuscates the rest. You can replace -keep by -keepclassmembers if you only want to keep the class members, and not necessarily the classes, although that seems less common.
Does that help?
Eric.
2009-12-15 17:26:16 UTC in ProGuard Java Optimizer and Obfuscator