Зачем мне Maven, если я использую Eclipse? - PullRequest
5 голосов
/ 18 февраля 2011

Я видел, что если я щелкну правой кнопкой мыши по проекту в Eclipse и выберу его для запуска на сервере, то я могу увидеть вывод, который означает, что проект запущен.

Если все работает без Maven, какой смысл его использовать. Чем он отличается от простого запуска через eclipse?

Ответы [ 2 ]

15 голосов
/ 18 февраля 2011

Maven - это инструмент для сборки (фактически, менеджер сборки), похожий на ANT.Основной задачей любого инструмента сборки является настройка проекта, компиляция с использованием необходимых проектов и выполнение окончательной упаковки.Скрипт компоновки в вашем проекте дает предварительный план структуры проекта.Это освобождает вас от любых настраиваемых зависимостей от конкретной IDE, такой как Eclipse.Все, что вам нужно знать, это стандартная команда для выполнения сборки, и вы можете собрать свой код практически где угодно.

Теперь вернемся к вашему вопросу, почему бы не сделать это в Eclipse?

Для простого проекта и небольшой команды Maven является излишним.Вы можете легко сообщить о конфигурации, использовать IDE и указать любые специальные действия, которые необходимо предпринять.В больших проектах, однако, существует множество слабо связанных зависимостей.Начнем с того, что будут разные настройки для сборки машины разработчика, тестовой сборки и производственной сборки.Существуют требования для запуска автоматического тестирования, интеграционных тестов, сохранения пакета сборки (артефакта) в общедоступном репозитории, обновления версий различных модулей.

Очевидно, что если все вышеупомянутые шаги выполняются вручную, есть вероятностьпропустить шаг.Более того, ручной процесс занимает много времени.

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

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

5 голосов
/ 18 февраля 2011

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

Возможно, ваш вопрос должен быть о том, как построить ваш проект.Maven предоставляет вам возможность централизовать библиотеки зависимостей по всему предприятию.Он позволяет автоматизировать процесс сборки (скорее всего, в сочетании с CI-сервером, таким как Hudson, круиз-контроль и т. Д.).Это позволяет автоматизировать ваше юнит-тестирование.Maven делает упаковку приложения очень простой.Разработчик не обязан выполнять запутанный набор шагов, чтобы упаковать приложение.Вы добавляете правильный плагин, и Maven заботится о нем как о части жизненного цикла сборки.Все это волшебство может произойти из-за принципа соглашения по конфигурации .Есть еще много преимуществ, я просто назвал несколько.

Maven не заменяет способ запуска приложения, а лишь то, как вы упаковываете приложение, автоматизируете этот процесс и управляете зависимостями вашего приложения.

Некоторые ссылки о том, почему кто-то должен использовать Maven: -

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