IBM®
Перейти к тексту
    в России и странах СНГ [изменить]    Условия использования
 
 
   
    Главная страница    Продукты    Услуги и решения    Поддержка и загрузка    Мой профиль    
Перейти к тексту

developerWorks Россия  >  Технология Java | Open source  >

Введение в Apache Maven 2

developerWorks
На предыдущую страницуСтраница 2 из 16 На предыдущую страницу

Опции документа

Исходные тексты примера


Выскажите мнение об этом учебном пособии

Помогите нам улучшить содержание


Обзор Maven 2

Maven - это высокоуровневый проект с открытым исходным кодом Apache Software Foundation, созданный, в первую очередь, для управления сложным процессом создания проекта Jakarta Turbine. Несмотря на такое скромное начало, разработчики проектов с открытым исходным кодом и в закрытых областях предпочли Maven в качестве системы создания проектов. Быстро развиваясь, сейчас уже во второй версии, Maven вырос из специализированной системы построения одного сложного проекта в обобщенную систему управления разработкой с огромным количеством дополнительных возможностей, применяемых в большинстве сценариев разработки программного обеспечения.

В двух словах, Maven 2:

  • Понимает как обычно конструируют проекты.

  • Использует встроенные понятия о проектах для упрощения и облегчения создания проектов.

  • На новом уровне использует встроенные понятия о проектах, чтобы помочь пользователю понять структуру сложных проектов и потенциальные возможности процесса создания.

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

  • Просто и ненавязчиво дает пользователю необходимый опыт для простых проектов, улучшая собственные внутренние представления.

  • Является полностью гибкой платформой для продвинутых пользователей; встроенные модели могут быть переопределены и декларативно адаптированы (посредством конфигурации, модификации метаданных или созданием пользовательских плагинов) для особых программных сценариев.

  • Позволяет добавлять детали сценариев, не включенные в существующую версию.

  • Постоянно улучшается, фиксируя недавно созданные практики программирования и установленную унифицированность пользовательских сообществ, и делая их частью встроенной базы знаний Maven о проектах.

Maven 2 - концептуальный обзор

Для получения знаний о том, как создаются проекты, Maven 2 использует набор концептуальных моделей о том, как такие вещи должны работать. Эти модели, частично являясь частью программного кода Maven 2, постоянно совершенствуются в новых версиях Maven. На Рисунке 1 показаны основные модели Maven 2:


Рисунок 1. Объектные модели и модели работы Maven 2
Объектные модели и модели работы Maven 2

Основными компонентами на Рисунке 1 являются:

  • Объектная модель проекта (POM): POM - основополагающая модель в Maven 2. Часть этой модели уже встроена в движок Maven (любовно названный реактором), вам остается лишь декларативно определить остальные части через файл метаданных на XML с именем pom.xml.

  • Модель управления связями: Maven требователен к тому, каким образом в проекте осуществляются связи. Управление связями - это переходная зона, типичная для инструментов и систем управления созданием проектов с более широкой специализацией. Модель управления связями в Maven встроена в Maven 2 и может быть адаптирована для широкого спектра потребностей. Эта модель отказоустойчива и продуктивна и в настоящее время используется в большинстве проектов с открытым исходным кодом.

  • Создание жизненного цикла и его фаз: Жизненный цикл и его фазы - понятия неотделимые от POM. Это связующее звено Maven 2 между его встроенными концептуальными моделями и реальным миром. При использовании Maven работа осуществляется только посредством плагинов. Maven 2 управляет этими плагинами, проходя серию четко определенных фаз в процессе разработки.

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



В начало


Maven 2 - обзор физического строения

Рисунок 2 раскрывает действия и взаимодействия в Maven 2, показывая его физическое строение. На Рисунке 2 показано, как вы можете взаимодействовать с Maven 2:


Рисунок 2. Модель действий и взаимодействий в Maven 2
Модель действий и взаимодействий в Maven 2

На рисунке 2, POM показывает, как Maven понимает ваш проект. Эта модель формируется декларативным описанием, содержащимся в серии файлов pom.xml. Файлы pom.xml создают дерево, и каждый из них может наследовать признаки родителя. Maven 2 поддерживает Super POM. Super POM находится на вершине иерархического дерева и содержит общие признаки, определенные по умолчанию для всех проектов; каждый проект POM наследует их.

Связи определяются как часть файла pom.xml. Maven рассчитывает связи в проекте на основе его модели управления связями. Maven 2 ищет зависимые компоненты (артефакты в терминологии Maven) в локальных и глобальных репозиториях. Артефакты, определенные в удаленных репозиториях, загружаются для обеспечения более быстрого последующего доступа к ним. Распознаватель связей в Maven 2 может работать и с переходными связями. То есть он правильно распознает связи, от которых зависят ваши связи.

Движок Maven самостоятельно через плагины осуществляет почти все задачи по обработке файлов. Плагины сконфигурированы и описаны в файле pom.xml. Сами плагины обрабатываются системой управления связями как артефакты и загружаются по запросу, если они требуются при построении. Каждый плагин может быть связан со множеством фаз жизненного цикла. Движок Maven имеет машину структурирования, которая работает во всех фазах жизненного цикла и вызывает плагины, если они необходимы.



В начало



На предыдущую страницуСтраница 2 из 16 На предыдущую страницу
    IBM в России Конфиденциальность Контакты