Определите классы, используемые приложением Java - PullRequest
1 голос
/ 05 января 2010

Как бы вы определили классы (не классы Sun JDK), загруженные / не используемые приложением Java?

Справочная информация:
У меня есть legacy Java-приложение для веб-запуска, которое претерпело много изменений кода и теперь имеет много классов, большинство из которых не используются. Я хотел бы уменьшить размер загружаемого приложения, развертывая только те классы, которые будут использоваться только вместо разделения всех пакетов.

Я также буду использовать тот же процесс, чтобы полностью удалить эти неиспользуемые классы.

Ответы [ 2 ]

2 голосов
/ 05 января 2010

Используйте java -verbose:class, чтобы увидеть, какие классы загружены, затем используйте grep (или любой другой инструмент), чтобы сохранить только строки из ваших пакетов.

Небольшое ограничение: оно сообщит вам, какие классы действительно используются , когда они используются, поэтому вы должны охватить все варианты использования вашего приложения.

2 голосов
/ 05 января 2010

Вы можете использовать хорошую IDE для этого.

Например, Intellij IDEA , который анализирует исходный код на наличие зависимостей и позволяет безопасно удалить .

Таким образом, вы можете избавиться от всего своего мертвого кода.

...