Создание приложения Java, которое загружает свои собственные зависимости - PullRequest
12 голосов
/ 18 декабря 2011

Меня интересует, как распространять Java-приложение, которое имеет много зависимостей (указано в pom.xml в Maven).

Очевидно, что можно было бы просто упаковать все в один большой файл .jar. Однако это кажется расточительным, так как обновление приложения потребует отправки новой копии всех зависимостей.

Поэтому я ищу способ распространения приложения, которое выполняет следующие действия:

  • Включает только основное приложение в основной файл .jar
  • Загружает зависимости по мере необходимости при запуске файла .jar
  • Локально хранит копии зависимостей, чтобы при распространении обновления приложения не нужно было снова загружать зависимости

Какой лучший способ добиться этого?

Ответы [ 2 ]

3 голосов
/ 18 декабря 2011

Можете ли вы просто использовать Maven, как описано в Maven Run Project ?

Вот так я могу настроить некоторые свои собственные приложения в своей сети. Мне никогда не приходилось долго беспокоиться о путанице с путями к классам или загрузке / предоставлении зависимостей для таких программ. Этот подход также соответствует всем вашим критериям.

2 голосов
/ 18 декабря 2011

вы можете распространять ваш файл, используя технологию веб-запуска (иначе распространять файл jnlp). Я полагаю, что это будет обрабатывать большинство этих функций для вас, в том числе возможность обновления.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...