The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

Релиз системы сборки Java-проектов Apache Maven 3.0

08.10.2010 19:41

Вышел релиз Apache Maven 3.0, системы для автоматизации управления Java-проектами и организации процесса сборки. Maven позволяет организовать централизованную сборку, ведение отчетности, тестирование и документирование, базируясь на концепции объектной модели проекта, при которой вместо правил сборки при помощи языка POM определяется структура проекта, оформляются связи и зависимости.

В новой версии полностью переработана основная инфраструктура сборки, которая теперь использует для разрешения зависимостей фреймврок Google Guice. Одно из самых интересных для разработчиков новшеств, состоит в том, что PAM-файлы теперь не обязательно должны базироваться на XML, отныне создана специальная прослойка Polyglot Maven, допускающая использование предметно-ориентированных языков, таких как Groovy или Ruby. Несмотря на кардинальную переработку разработчики попытались, насколько это возможно, сохранить совместимость со второй веткой системы. Со списком несовместимостей можно познакомиться на данной странице.

Другие улучшения Maven 3.0:

  • Проведена работа по увеличению производительности и удобства работы;
  • Реализована возможность параллельной сборки;
  • Интегрирована библиотека Aether для работы с Maven-репозиториями;
  • Создан специальный API для конфигурирования компонентов;
  • Добавлено защищенное хранилище паролей, активно использующее шифрование;
  • Добавлена поддержка разработки расширений с использованием компонентов из других расширений;
  • В расширения добавлена возможность отслеживания артефактов в локальных репозиториях;
  • Добавлена возможность автоматической генерации трассировок стека при возникновении внутренних ошибок.
  • Расширены возможности по поддержке аппаратно-независимой динамической модульной шины OSGi для создания Java-приложений.


  1. Главная ссылка к новости (http://www.sonatype.com/people...)
  2. OpenNews: На развитие Apache Maven инвестировано 11.6 млн. долларов
  3. Введение в Apache Maven 2
Лицензия: CC-BY
Тип: Программы
Короткая ссылка: https://opennet.ru/28225-Maven
Ключевые слова: Maven, java, make
Поддержать дальнейшую публикацию новостей на OpenNET.


Обсуждение (20) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, qpq (ok), 20:19, 08/10/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    опять наверное в очередной раз переработали и улучшили dependency management таким образом что существующие проекты перстанут собираться :)
     
  • 1.2, DeadMustdie1 (ok), 20:35, 08/10/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Ну вот опять выпустили новую версию этой гадости, которая мешает собирать проекты из исходников.

    Вместо того, чтобы документировать зависимости или поставлять их с исходниками, ряд горе-мэйнтейнеров предлагают скачать основанную на Maven систему сборки. "Из коробки" оно никогда не работает (я уж не говорю про случай отсутствия доступа к Internet с машины, на которой выполняется сборка), а заниматься хацканьем чужой *сложной* системы сборки - занятие нездоровое.

     
     
  • 2.3, Alex Ott (?), 22:24, 08/10/2010 [^] [^^] [^^^] [ответить]  
  • +4 +/
    ничто не мешает вручную поставить все необходимые зависимости в локальный репозиторий, и тогда они будут браться оттуда...
    я maven использую для сборки кода на clojure, и это очень удобно - зависимости сами приезжают на машину, множество плугинов на разные случаи жизни, авто-деплой и т.п.
     
     
  • 3.11, Gambler (ok), 17:57, 09/10/2010 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Мешает то, что действия, необходимые для сборки, зашифрованы в огромных XML файлах вместе с кучей какого-то сгенерированного, извините, говна.

    Нет, идея хорошая. Скачал пакет с исходниками, набрал команду (или нажал кнопку) и он пошел качать зависимости и строить. Но реализация, как это обычно получается у великих теоретиков программирования, раз в сто сложнее чем должна бы и оттого на практике оборачивается в основном геморроем.

     
     
  • 4.17, iZEN (ok), 20:20, 11/10/2010 [^] [^^] [^^^] [ответить]  
  • +/
    > Мешает то, что действия, необходимые для сборки, зашифрованы в огромных XML файлах вместе с кучей какого-то сгенерированного, извините, говна.

    А что мешает разобраться во всём этом?

    Цикл статей "Наводим порядок в разработке ПО вместе с maven": http://black-zorro.com/mediawiki/%D0%9D%D0%B0%D0

    > Нет, идея хорошая. Скачал пакет с исходниками, набрал команду (или нажал кнопку) и он пошел качать зависимости и строить. Но реализация, как это обычно получается у великих теоретиков программирования, раз в сто сложнее чем должна бы и оттого на практике оборачивается в основном геморроем.

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

    Работа с репозиториями Maven организуется отдельными инструментами, в частности, Apache Archiva.

     

  • 1.4, skew (?), 22:41, 08/10/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    У нас на работе говорят так:"Кто владеет мавеном, тот владеет всем". Эта штука очень глючная, по крайне мере в ипостасе 2 версии, может не собирать проект из эклипса, и собрать из консоли, и наоборот! По своему собственному желанию может не подхватывать зависимости ( очень частый вариант ), и требует кучу памяти для своей работы! А учитывая несовместимость новой версии со старой, это лишь добавит головной боли всем.
     
     
  • 2.5, Аноним123321 (ok), 23:56, 08/10/2010 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > По своему собственному желанию может не ... ...

    нет, причина есть всегда!

    например Фаза Луны возможно очень влияет

    :-) :-)

     
     
  • 3.6, bav (?), 00:16, 09/10/2010 [^] [^^] [^^^] [ответить]  
  • +/
    > например Фаза Луны возможно очень влияет

    Смех-смехом, но в первые пол года я тоже так думал, только в качестве виновников были спутники юпитера. А сейчас, даже могу предсказать исход билда по времени старта mvn )))

     
  • 2.8, Knuckles (ok), 02:07, 09/10/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Сам не юзаю, но на твои рассказы можно ответить только одной известной пословицей: мыши плакали, кололись, но продолжали жрать кактус.
     
  • 2.9, qpq (ok), 04:12, 09/10/2010 [^] [^^] [^^^] [ответить]  
  • +/
    да ладно Вам, все нормально работает если вовремя прочитать документацию по плагинам и их настройках по умолчанию
    в любом случае это лучше, чем ant
     
     
  • 3.14, ДяДя (?), 11:15, 11/10/2010 [^] [^^] [^^^] [ответить]  
  • +/
    +несколько

    Я читал здесь: http://www.sonatype.com/books.html

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

     

  • 1.7, Tav (ok), 01:40, 09/10/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > специальная прослойка Polyglot Maven, допускающая использование предметно-ориентированных языков, таких как Groovy или Ruby.

    Вот это здорово. Уже оценил на примере leiningen, насколько удобно, когда система сборки использует для описания проекта нормальный ЯП вместо XML.

     
     
  • 2.19, Аноним123321 (ok), 21:27, 11/10/2010 [^] [^^] [^^^] [ответить]  
  • +/
    просто те кто везде засовывают XML -- не понимют что XML это _машинный_ язык а не человеческий :-(

    например для описания Www-документов -- XML (говоря об XHTML) -- подходит очень даже хорошо! так как этот XML -- формируется не человеком напрямую, а через скрипт PHP/Python/<...>

    но вот описывать чтото _самому_ _вручную) через XML -- это уж слишком жырно...
    YAML придулами не глупые люди :-)

     
     
  • 3.20, iZEN (ok), 23:13, 11/10/2010 [^] [^^] [^^^] [ответить]  
  • +/
    > просто те кто везде засовывают XML -- не понимют что XML это _машинный_ язык а не человеческий :-(

    Согласен.
    Но какой ещё формат "человеческого" языка описания может подтвердить правильность написания (well-formed) и соответствие семантическим правилам (valid) документа, кроме XML?

     

  • 1.10, АнонимМ (?), 10:02, 09/10/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Единственное, что понравилось в мавене, что его помки понимают иде и в эклипсе и в идеи project файл это pom.xml. Остальные достоинства я не шибко оценил.
     
  • 1.12, Аноним (-), 18:25, 09/10/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    ant+ivy наше все
     
     
  • 2.13, qpq (ok), 00:34, 10/10/2010 [^] [^^] [^^^] [ответить]  
  • +1 +/
    maven удобнее для сложных и составных проектов

    ant проще заставить выполнять нестандартные вещи, но от maven'а знаешь чего ожидать
    в случае ant'а - возможно придется ковырять скрипт, чтобы понять какие вообще команды определены и что они выполняют

     
     
  • 3.15, ДяДя (?), 11:41, 11/10/2010 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Если нужны нестандартные возможности, то ищешь нужный плагин.
    Если такого плагина нет, то пишешь свой.


     

  • 1.16, Аноним (-), 20:04, 11/10/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Дорогие знатоки, а что вам делает пакетный манагер?
    1. качает
    2. патчит
    3. компилит
    4. тесты гоняет
    4. инсталлирует

    И все это одной кнопкой. А если хочется, чтоб работало не в одном дистрибутиве, а вообще везде, даже в винде? Тут-то из кустов и появляется мавен.

     
  • 1.18, Аноним (-), 21:25, 11/10/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Но есть отличие, это инструмент разработчика, а не замена пакетного менеджера.
     
     Добавить комментарий
    Имя:
    E-Mail:
    Текст:
    При перепечатке указание ссылки на opennet.ru обязательно



    Спонсоры:
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2021 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру