Обфусцирование файла jar с помощью proguard - PullRequest
0 голосов
/ 02 января 2012

Я использовал proguard, чтобы запутать файл фляги.Во время обработки я получил следующие ошибки:

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').

Пожалуйста, сначала исправьте вышеупомянутые предупреждения.Направь меня, чтобы устранить это предупреждение.

1 Ответ

1 голос
/ 02 января 2012

Вы проверили раздел устранения неполадок ProGuard - Проблемы при обработке .

Если есть unresolved references to classes or interfaces, скорее всего, забыл указать необходимую библиотеку .Для правильной обработки должны быть указаны все библиотеки, на которые ссылается ваш код, включая библиотеку времени выполнения Java.Для указания библиотек используйте параметр -libraryjars.

Например, если ProGuard жалуется, что не может найти класс javax.crypto, вам, вероятно, все равно придется указать jce.jar, next to the more common rt.jar.

Если вам не хватает библиотеки, и вы абсолютно уверены, что она в любом случае не используется, вы можете попытать счастья с опцией -ignorewarnings или даже -dontwarn option.Используйте эти опции, только если вы действительно знаете, что делаете.

Например, если вы разрабатываете для Android, и ProGuard жалуется, что не может найти java.awt class, тогда некоторыеиспользуемая вами библиотека ссылается на java.awt.Это немного сомнительно, поскольку Android вообще не имеет этого пакета, но если ваше приложение все равно работает, вы можете позволить ProGuard принять его с "-dontwarn java.awt.**".

...