Reputation:
I used proguard
to obfuscate my jar file.
During processing I got the following errors:
Initializing...
Warning: tdvep.jmNb: can't find referenced class QSYGWO
Warning: tdvep.qmfsfjttKdvEpNz: can't find referenced class FVTYBN
Warning: tdvep.qsfboBcSw$qsffmtssf: can't find referenced class UGKTLU
Warning: tdvep.qsffmtssf: can't find referenced class DREQUQ
Warning: there were 4 unresolved references to classes or interfaces.
You may need to specify additional library jars (using '-libraryjars').
Please correct the above warnings first. So guide me to resolve this warnings.
Upvotes: 0
Views: 2335
Reputation: 18290
Have you checked the ProGuard troubleshooting section - Problems while processing.
If there are unresolved references to classes or interfaces
, you most likely forgot to specify an essential library. For proper processing, all libraries that are referenced by your code must be specified, including the Java run-time library. For specifying libraries, use the -libraryjars
option.
For example, if ProGuard
complains that it can't find a javax.crypto
class, you probably still have to specify jce.jar, next to the more common rt.jar.
If you're missing a library and you're absolutely sure it isn't used anyway, you can try your luck with the -ignorewarnings
option, or even the -dontwarn option
. Only use these options if you really know what you're doing though.
For example, if you're developing for Android
, and ProGuard complains that it can't find a java.awt class
, then some library that you are using is referring to java.awt
. This is a bit shady, since Android doesn't have this package at all, but if your application works anyway, you can let ProGuard
accept it with "-dontwarn java.awt.**"
.
Upvotes: 1