Как Maven облегчает управление файлами Jar? - PullRequest
1 голос
/ 09 октября 2011

Читая о Maven, я наткнулся на строку ниже.

Очень важным аспектом Maven является использование репозиториев для управления файлами JAR в разных проектах.

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

Скажите, пожалуйста, как Mavenуправляет файлами JarЕсли ответственность за указание используемых jar-файлов (с версиями) лежит на самих разработчиках, то как Maven облегчает работу с файлами Jar или управление ими?

Ответы [ 2 ]

2 голосов
/ 09 октября 2011

Maven имеет много преимуществ в отношении управления зависимостями.

  1. Он загружает зависимости, которые вы указываете, из надежного расположения (репозиторий Maven Central) Зависимости не нужно хранить в контроле версий, что экономит пространство
  2. Помогает управлять различными версиями зависимостей, что делает сборки надежными и воспроизводимыми (указание одной и той же зависимости в разных проектах гарантирует, что оба проекта используют одинаковую зависимость)
  3. Он управляет включением транзитивных зависимостей для вас (добавление зависимости в ваш проект также добавляет все зависимости этой зависимости, их зависимости и т. Д.)
  4. Управляет исключением конфликтующих версий переходныхзависимости (если две ваши зависимости зависят от двух разных версий другой зависимости, используется только одна версия. Вы можете указать, какая из них)
  5. Это делает ваши проекты (локальные и удаленные) доступными друг другу для использования в качествеdзависимости (если модуль, который вы разрабатываете на своей машине, зависит от другого модуля, который вы разрабатываете на своей машине, вы можете объявить эту зависимость, и Maven будет включать встроенную версию одного модуля при сборке другого)
0 голосов
/ 09 октября 2011

По моему мнению, может быть 2 сценария, когда накладные расходы Maven (да, крутая кривая обучения по сравнению, например, с Ant) окупаются:

  • Управление версиями используемых библиотек
  • Управление результирующими библиотеками вашей разработки

Управление версиями библиотек

С помощью Ant вы обычно включаете используемые библиотеки где-то в папке lib, и это зависитна хорошую работу вашего архитектора, если источник библиотеки известен через 3 или 5 лет.Maven помогает управлять этим, предоставляя место для зависимых библиотек.Там вы можете точно исправить версию, которую хотите использовать, и вся настройка и поиск будут выполнены для вас.

Управление полученными библиотеками

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

Предупреждение: вы можете использовать Ivy только для управления зависимостями, если эточто вы хотите сделать.

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