Створіть жирний файл Jar - плагін Maven Shade

У цьому посібнику ми покажемо вам, як використовувати плагін Maven Shade для створення Jar-файлу разом з банками залежностей у єдиний виконуваний файл Jar, так званий жирний jar або uber Jar.

жирний

1. Перегляньте проект Java

Попередній проект Java (dateutils) буде використаний повторно, див. Наступну структуру папок

2. Pom.xml

Прочитайте коментар нижче для пояснення.

3. Упакуйте це

Щоб створити остаточну банку, просто упакуйте її:

У цільовій папці буде створено два файли jar.

  1. dateutils.jar - Проекти та класи залежностей в одній баночці, це те, що ви хочете.
  2. original-dateutils.jar - Тільки ваші класи проекту

P.S Згенерована залежність-зменшена-pom.xml призначена лише для довідки, просто ігноруйте її.

4. Перегляньте це

Перелічіть вміст dateutils.jar

Завантажте вихідний код

Список літератури

мкьонг

Привіт,
Як я бачу, затінений плагін створить дві банки
1. dateutils.jar
2. original-dateutils.jar

Чи можемо ми уникнути створення original-dateutils.jar.
У нас є вимога, згідно з якою нам потрібна лише банка uber.

У мене є деякі сторонні банки, які не є частиною центрального репо, що мені потрібно включити до виконуваної банки. На даний момент я маю тоді базовий каталог проекту. Здається, плагін збірки та відтінків Maven не включає зовнішніх залежностей у жировій банці. Не могли б ви допомогти, якщо можна створити виконуваний jar, який включає зовнішні бібліотеки?