Как стать автором
Обновить

Apache Maven 2

Время на прочтение 2 мин
Количество просмотров 3.2K
Я таки решил попробовать что-нибудь написать в своем блоге, так что не ругайте сильно если что ;) Первую статью пишу про систему построения и управления Java-проектами Apache Maven 2. Это обзорная статья, если кому-то будет интересно – сделаю небольшой цикл уже с подробностями.

Итак, что же такое Maven? Java-разработчикам хорошо известна утилита Apache Ant. Довольно адекватная замена командной строке, однако чтобы добавить в проект какие-то новые ресурсы, компилируемые модули приходится написать не одну строку в build.xml. Maven же довольно сильно сокращает количество шагов для получения желаемого результата.
Основная идея Maven состоит в том, что у каждого проекта есть так называемая объектная модель (project object model, POM), которая описывается в файле pom.xml. Здесь указываются все модули, которые использует проект, пути к репозиториям и многое другое. Все что вам нужно сделать – разработать эту самую объектную модель и собрать проект с помощью Maven. При этом описывать все с точностью до каталога не надо – Maven «знает» как обычно строятся проекты и он сам все найдет и соберет.
Для еще большей простоты и скорости работы существуют так называемые архетипы – с их помощью можно создать структуру каталогов и объектную модель для проекта автоматически. В Maven уже существует довольно много предопределенных архетипов, описывающих веб-приложения, библиотеки классов, J2EE-приложения и многое другое. Кроме того вы можете легко создать свои собственные.
Очень грамотно организована работа с репозиториями. Если Maven не находит в локальном репозитории нужный ему модуль или плагин – он сам пытается скачать его из интернета и после этого помещает его к себе в локальный.
С помощью плагинов Maven легко интегрируется во все самые популярные IDE (Eclipse, NetBeans, IDEA, JDeveloper). Это сильно упрощает взаимодействие в коллективе – каждый разработчик может работать в своей любимой IDE и не бояться несовместимости каталогов и проектных файлов.
Так же существует возможность по генерации сайта, на котором отображается информация о новых релизах библиотек.
Пожалуй вкратце – это все. Если кого-то заинтересовало – могу продолжить. В частности – более подробно опишу архитектуру Maven, процесс создания приложения, обслуживание сервера репозиториев, интеграцию в различные IDE.
Теги:
Хабы:
+10
Комментарии 17
Комментарии Комментарии 17

Публикации

Истории

Ближайшие события

Московский туристический хакатон
Дата 23 марта – 7 апреля
Место
Москва Онлайн
Геймтон «DatsEdenSpace» от DatsTeam
Дата 5 – 6 апреля
Время 17:00 – 20:00
Место
Онлайн