Обновить

Комментарии 16

— Достаточно в корне проекта написать mvn clean install — и проект соберется!
Не совсем так, иногда приходится вручную подключать библиотеки.

Лично я вздохнул, когда первый раз использовал мавен после анта. Не знаю, возможно, у нас стандартные проекты без выкрутасов (сейчас посмотрел — 860 мег фолдер), но по мне ант и мавен отличаются как автомобиль Форд Т и мерседес АМГ.

IMHO.
Соглашусь с вами. Сейчас даже не понимаю как я без него раньше обходился.
С maven'ом я практически не уделяю времени на сборку, он все делает сам.
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
Если это мне, то это когда он не может найти нужную библиотеку в репозитории. Или проект не особо распространенный, либо своя библиотека, которая не в мавен-проекте.
НЛО прилетело и опубликовало эту надпись здесь
Да. Так, конечно, красивее, но по факту команда mvn clean install не гарантирует сборку проекта, а добавление артифакта, который не может быть найден в репозитории, нужно проиводить вручную.

Фрд Т и мерседес — наверное, неправильное сравнение, скорее это ручная коробка и автоматическая.
Да, конечно, эта команда не гарантирует успешную сборку — помимо отсутствия нужных артефактов в репозиториях возможны и другие причины, например, перед сборкой может быть необходимо прописать в settings.xml (файл конфигурации Мавена) имя и пароль для доступа к закрытым репозиториям. То, что я имел в виду — это что у Мавена команда, запускающая полную сборку стандартна, в отличие от того же Анта. Я встречал самые разные таргеты для полной сборки в Анте, от довольно традиционного «all», до перлов типа «full_release_build_new». Но, повторюсь, с моей точки зрения это удобство в Мавене достигается ценой сильного ограничения свободы.
НЛО прилетело и опубликовало эту надпись здесь
Ну да, я про это и говорю — с ручной коробкой больше свободы, а с автоматом комфортнее.

С другой стороны можно рассматривать ограничения мавена как некий стандарт. Мавен же не возник сферическим в вакууме, на нем собирается куча проектов, плюс к тому он и сам возник как кастомизированный сборщик. Возможно, если сборка требует того, что мавен не может, это повод подумать, а действительно ли нам это нужно?
«Все, мариванна, ухожу, ухожу, ухожу!»(С)
Модели проекта длинны, плохо читаемы и трудно изменяемы. Муторный синтаксис на основе XML; наследование моделей, в результате чего зачастую приходится просматривать несколько моделей, чтобы определить, какая же конфигурация в конце концов будет использована при сборке.

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

Процесс сборки зависит от внешних систем. Именно — от репозиториев. У меня был случай, когда у одного нового сотрудника возникли необъяснимые проблемы со сборкой проекта. В конце концов выяснилось, что у одного из репозиториев поменялся URL. Те, у кого Мавен уже успел скачать все что нужно, ничего не замечали; а вот новые сотрудники не могли собрать проект.

Хм, завязывать сборку продукта на внешний ресурс — это очень смелое решение. Наказание за него вполне закономерно. Чем тут Maven виноват?
наследование моделей, в результате чего зачастую приходится просматривать несколько моделей, чтобы определить, какая же конфигурация в конце концов будет использована при сборке.

mvn help:effective-pom пробовали?
help:effective-pom, действительно, показывает полную эффективную конфигурацию. К сожалению, при этом остается неясным, откуда что в этой конфигурации взялось, а для меня это зачастую важно — у меня в проекте есть модули с 5 — 6 уровнями наследования. Периодически нужно что-то в сборке одного из модулей поменять, и тогда начинается выяснение, где именно этот параметр определен и можно ли его там безопасно менять…
How about MS Visual Studio? Чтоб через пару лет снова не менять шило на мыло :)
Это был сарказм?:)

А вообще я после мавена не представляю себе жизнь на анте… Все что надо делается на мавене без труда и всегда есть возможность «подпилить», если необходимо.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации