Как использовать Proguard для оптимизации файла War?

#java #optimization #jar #proguard

Вопрос:

У меня есть приложение в .war архиве, которое я пытаюсь оптимизировать по размеру и производительности, и я слышал о Proguard.

На https://github.com/Guardsquare/proguard Прочитай, что там написано:

Создание ProGuard несложно — вам просто понадобится установленный Java 8 JDK.

Артефакты будут сгенерированы в каталоге lib. Затем вы можете выполнить ProGuard, используя сценарии в bin, например:

bin/proguard.sh

Вы можете опубликовать артефакты в своем локальном репозитории Maven, используя:

./gradlew publishToMavenLocal

Когда я запускаю bin/proguard.sh , он говорит: rror: Unable to access jarfile /home/myusername/proguard/bin/../lib/proguard.jar lib Каталог не существует.

Я openjdk-8-jdk установил на Debian.

Комментарии:

1. Они, похоже, предполагают, что вы знаете, как использовать gradle. Запустите ./gradlew package , чтобы запустить сборку. Но также: чтобы использовать его, вам не нужно создавать его с нуля. Используйте плагин gradle или двоичный дистрибутив.

2. @JoachimSauer Используя двоичный дистрибутив, я мог бы запустить его, но теперь он говорит Error: You have to specify '-keep' options for the shrinking step. , что я должен был игнорировать предупреждения.