-
It may be easier to unpack the war file before processing it. Otherwise, you should add the library jars to the processed war file (with Ant or with the jar command).
Eric.
2009-11-09 22:01:04 UTC in ProGuard Java Optimizer and Obfuscator
-
Ok, we'll solve it like this. I've removed the MONITOR_EXIT line for the upcoming ProGuard 4.5 beta3.
2009-11-07 23:56:39 UTC in ProGuard Java Optimizer and Obfuscator
-
Cfr. ProGuard manual > Troubleshooting > Warning: class file ... unexpectedly contains class ...
Eric.
2009-11-07 20:10:00 UTC in ProGuard Java Optimizer and Obfuscator
-
Thanks for the detailed analysis and for the clean code. I would prefer to handle this as a general optimization, since ProGuard's retargeting does not attempt to fix any incompatibilities between versions (e.g. StringBuffer vs StringBuilder). For programs (or at least Java programs) that are compiled correctly, I would assume that monitorexit cannot throw exceptions. It's a bit worrying that...
2009-11-07 20:07:05 UTC in ProGuard Java Optimizer and Obfuscator
-
Cfr. ProGuard manual > Usage > -optimizations
Does your configuration keep class B from being obfuscated? In that case, ProGuard should not merge it with class A.
Eric.
2009-11-06 01:49:39 UTC in ProGuard Java Optimizer and Obfuscator
-
I don't see any obvious omisssions. Can you check if the annotations are present in the processed code (with javap, for instance)?
Eric.
2009-10-28 22:38:28 UTC in ProGuard Java Optimizer and Obfuscator
-
Processing third-party libraries can be tough, since you generally don't know if and where reflection is being used. It's a matter of trial and error then, as you've noticed. As a general rule, it's safer to leave such libraries untouched.
ProGuard only replaces string constants for some reflection constructs (cfr. introduction), and optionally for class names (cfr. -adaptclassstrings)...
2009-10-28 20:23:58 UTC in ProGuard Java Optimizer and Obfuscator
-
That looks like a valid attempt.
Does your code indeed implement a Swing Look & Feel?
Do you see any matched classes with the -printseeds option?
Does ProGuard print out any notes or warnings?
Which exceptions do you get precisely?
Eric.
2009-10-27 19:36:11 UTC in ProGuard Java Optimizer and Obfuscator
-
Your -keep specification preserves all public/protected classes/methods. If you want to exclude some package:
<pre>
-keep public class !somepackage.* {
public protected *;
}
</pre>
This also include fields.
Eric.
2009-10-24 08:13:11 UTC in ProGuard Java Optimizer and Obfuscator
-
Although PropHelper.getInt may be inlined and PropHelper may be eliminated, there is no way to ask ProGuard to evaluate Integer.parseInt.
Eric.
2009-10-18 09:45:25 UTC in ProGuard Java Optimizer and Obfuscator