Обзор: эффективная реализация Apache Maven 2

Обзор: эффективная реализация Apache Maven 2

+

В эти выходные я потратил весь свой день на эту книгу, и она принесла мне много сюрпризов. Я всегда думаю, что Maven - это просто еще один инструмент зависимости от «Ant» и библиотеки, однако эта книга проясняет мое восприятие и раскрывает многие функции Maven, о которых я не знаю. Это больше похоже на практическую книгу или учебное пособие, где создается образец приложения в стиле Maven, а затем рассказывается, как интегрировать Maven с Apache Archiva (менеджер репозитория) и Continuum (CI Server).

Часть интеграции Maven (CI и репозиторий) всегда отсутствовала во многих аналогичных книгах Maven; Я бы сказал, что эта книга очень хорошо изучила эту область.

В главах 4 и 5 представлено много полезных покрытий кода, статического анализа и инструментов для поиска ошибок, которые определенно приносят много пользы нашим проектам. На самом деле я использовал для интеграции этих отчетов в свой сервер непрерывной сборки Hudson; Я никогда не думал, что у Maven такая же способность.

В главе 7 также приводится множество полезных советов и приемов Maven, передовых практик.

В главах 8 и 9 рассказывается о Continuum (CI Server), я не хочу комментировать это, поскольку я использую Hudson все время и вполне им доволен. Однако мне стоит попробовать этот CI в моем будущем проекте.

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

Глава 1: Maven в двух словах

Введение в Maven, быстрое, но исчерпывающее

Изучены навыки:

  1. Как установить и настроить Maven на машине разработки

  2. Как создать новый проект в Maven, скомпилировать его, запустить модульный тест и развернуть его с помощью Maven

  3. Как добавить библиотеку зависимостей и плагины в Maven

Глава 2: Сохранение контроля с Archiva

Archiva - хороший менеджер репозитория для Maven, здесь рассказывается о его важности и базовом использовании. В главе 10 есть более сложная тема.

Изучены навыки:

  1. Как установить и настроить Apache Archiva

  2. Как настроить прокси и репозиторий Archiva

  3. Как интегрировать его с Maven

Глава 3: Создание приложения с использованием Maven

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

Изучены навыки:

  1. Как создать и организовать файл POM

  2. Как настроить многомодульную сборку и почему

  3. Как создать среду выполнения с помощью плагина App Assembler

Глава 4: Тестирование приложений с Maven

Кратко расскажите, что такое модульное тестирование, интеграционный тест, функциональный тест и т. Д., И как его реализовать в Maven.

Изучены навыки:

  1. Как использовать плагин Maven's surefire для запуска теста и проверки отчета

  2. Как использовать TestNG в качестве альтернативы

  3. Как использовать инструменты покрытия кода, такие как EMMA, и интегрировать их с Maven

Глава 5: Отчетность и проверки

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

Изучены навыки:

  1. Как добавлять отчеты в свои проекты

  2. Знайте множество инструментов проверки качества и отчетов, например PMD, CheckStyle, FindBugs, Clirr и т. Д.

  3. Как использовать плагин приборной панели для группировки всех вместе

Глава 6: Полезные плагины Maven

Представьте несколько популярных и полезных плагинов Maven и покажите им пример. Возможно, вы тоже используете один из них?

Изучены навыки:

  1. Плагин удаленных ресурсов

  2. Плагин Build Number

  3. Плагин Shade

  4. Плагин Build Helper

  5. Плагин AntRun

  6. Плагин Exec

Глава 7: Лучшие практики Maven

Советы, уловки и передовой опыт Mavens ~

Изучены навыки:

  1. Как зашифровать пароли сервера

  2. Использование соглашения, наследования и разложения сборки на модули

  3. Как сделать ваши сборки портативными

  4. Многие другие лучшие практики Maven

Глава 8: Continuum: обеспечение работоспособности исходного кода

Сервер непрерывной интеграцииContinuum, что это такое и почему он важен при разработке программного обеспечения?

Изучены навыки:

  1. Установка и настройка проекта в Continuum

  2. Как интегрировать его с Maven

Глава 9: Континуум в глубине

Еще одна глава, посвященная Continuum, содержит более сложные темы.

Изучены навыки:

  1. Как вести себя с релизными проектами (разные фазы)

  2. Как создать несколько проектов и реализовать параллельные сборки и распределенные сборки

  3. Некоторые задачи обслуживания в Continuum

Глава 10: Archiva в команде

Практическое руководство по внедрению Archiva в вашей команде.

Изучены навыки:

  1. Как контролировать доступ к репозиторию

  2. Как настроить RSS-канал для обнаружения новых артефактов

  3. Как использовать функцию отчетов Archiva

  4. Некоторые задачи по обслуживанию Archiva

Глава 11: Архетипы охватывает архетипы Maven

Подробное руководство по архетипу Maven

Изучены навыки:

  1. Что это и какие преимущества

  2. Доступны разные типы архетипов

  3. Как создать собственный архетип

Глава 12: Maven, Archiva и Continuum на предприятии

Знакомство с безопасностью Maven, Archiva и Continuum и ее реализацией в корпоративной среде.

Изучены навыки:

  1. Как интегрировать безопасность Redback, LDAP в Archiva и Continuum

  2. Как интегрировать другие инструменты через веб-сервис Archiva и Continuum

Заключение

В целом очень хорошо и полезно; эта книга действительно содержала то, что обещало название «Maven 2: эффективная реализация». Я бы порекомендовал эту книгу «http://www.amazon.com/gp/product/1847194540/ref=as_li_tf_tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=1847194540&linkCode=as2&tag=progrlife-20[The Maven 2: Эффективная реализация]» Всем Java-разработчикам, которые хотят узнать о Maven и понять, как он работает с Apache Archiva (менеджер репозиториев) и Continuum (CI Server), это именно то, как выглядит проект Maven, реализованный в корпоративной среде.