Подтвердить что ты не робот

Исключить неиспользуемые части зависимостей из jar (Maven)

У нас есть небольшой проект с некоторыми тяжелыми зависимостями (например, Spring), из которых мы используем только мелкие части. Поэтому JAR, который мы получаем при упаковке со всеми зависимостями, весит несколько мегабайт, даже для двухклассного сервера. Это кажется ненужным.

Есть ли способ ограничить сборку JAR фактически используемыми (классными) файлами?

4b9b3361

Ответ 1

Вы можете использовать maven-shade-plugin для создания Jar-зависимых (ваш проект и зависимости, объединенные в одну большую банку), в то время как ограничивая классы или пакеты, которые добавляются в эту банку. См. включает/исключает страницу для справки.

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

Ответ 2

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