Help - Search - Members - Calendar
Full Version: Maven, Ant і інші білдові звірі
DEV UA > IT України > Теревені
Pegasus
ІМХО Ant і Maven використовують в різних по величині і складності проектах.
TIGER
ЦИТАТА(Pegasus @ 14.5.2008, 11:57) *
ІМХО Ant і Maven використовують в різних по величині і складності проектах.


Я знаю одне, що зараз більшість екземплів в інеті та й проектів, навіть простих Maven. І якщо ще й з самого початку правильно організувати структуру своїх сурсів - так як того вимагає Maven, то йому взагалі ціни нема.
professor
З Maven не бавився... Можеш в двох словах пояснити, шо воно таке, і як його юзають? Бо я щойно побіжно подивився на "What is Maven" і "What is Maven Not", там всьо написано саме так, щоб нікому нічого не було понятно.
TIGER
ЦИТАТА(professor @ 15.5.2008, 11:29) *
З Maven не бавився... Можеш в двох словах пояснити, шо воно таке, і як його юзають? Бо я щойно побіжно подивився на "What is Maven" і "What is Maven Not", там всьо написано саме так, щоб нікому нічого не було понятно.


Maven - хороша тулза, але якщо в тебе нема інету або якогось локального мережевого репозитарію залежностей(dependencies), то толку з нього мало.

Якщо коротко, то Maven допоможе тобі стандартизувати білди і дозволити з легкістю писати нові білд файли, не видумуючи всяких хитромудних xml-build скриптів. Він сам попіклується про залежності (dependencies або сторонні бібліотеки твого проекту) - тобі не доведеться пхати всякі там екстернали в свн і зберігати їх в якійсь окремій директорії. Крім того, є стандартна конвенція по організації твого сурс-коду, і якщо ти все робитимеш по ній - то написання білд скрипта зведеться до якогось мінімуму - в найтривіальнішому випадку - це додавання в pom-файл інформацію про залежності та необхідні плагіни.

До нього є купа плагінів, в тому числі і автотегування, робота з сурс контролами, генерація проектів під популярні IDE, наприклад, Eclipse, Idea (на рахунок .NET нічого сказати не можу) та інші.

Легко інтегрується в програмулі для автоматичного білдання проектів: CruiseControl, Hudson та інші.

Автоматично виконує тести (якщо такі є і відповідають конвенції) і генерує після цього якісь стандартні репорти на основі результатів виконання (xml та txt).

Крім того, є ще спеціальний модуль для Maven - Ant Tasks module, який дозволяє виконувати антові таски.

Результатом білда твого проекту є певні артефакти, які Maven розміщує ще й в свому репозитарії залежностей, що дозволяє тобі шарити згенеровані артефакти як між підроектами, так і між зовсім іншими проектами. Таке середовище може бути як і локальним, так і загально доступним (мережевим, або взагалі розшареним в інеті).

Ось така коротка інфа про Maven.

Якщо когось цікавить хороша книженція - то шукайте її тут: Better Builds With Maven Book
diyko
http://uk.wikipedia.org/wiki/Apache_Maven
загалом я використовував мейвен і ант на різних проектах
можу сказати що мейвен підходить краще для тих хто готовий раз потратити трохи часу - сконфігурувати пом файл і більше не вертатись до нього
Також мейвен дає гарну і унііверсальну структуризацію проекту
Ніколи не потрібно ручками якісь сорси кудись копіювати чи фільтрувати, але якщо у вас якийсь унікальний випадок тоді часу щоб це зробити можна потратити багато

Ант відчутно гнучкіший, але в результаті коли додаєш нову лібу потрібно її прописати всюди, появились нові ресурси теж прописуй, якщо міняється по ходу структура проекту то знову ж таки тре щось міняти. Загалом це все робиться просто і відносно швидко, але в Мейвені таких питань не виникає

Ну і що мені подобається в мейвені це коли я беру чужий проект я знаю наперед що де знаходиться
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Форум IP.Board © 2001-2010 IPS, Inc.