Подтвердить что ты не робот

Java Build Tools: Ant против Maven

Я читал этот блог Kent R.Spillner в отношении инструментов сборки Java. Хотя я слегка использовал Ant и Maven, я не стал ни к кому серьезно относиться, что я намереваюсь сделать. Есть ли сообщение в блоге, которое я связал с выраженным? Самое главное, следует использовать Maven или Ant для проекта среднего размера (приблизительно 20K LOC).

4b9b3361

Ответ 1

Это действительно зависит. Maven и Ant - это просто разные подходы: императивные и декларативные (см. Императивные vs декларативные системы сборки)

Maven лучше подходит для управления зависимостями (но Ant в порядке с ними, если вы используете Ant + Ivy) и создаете артефакты. Основное преимущество maven - его жизненный цикл. Вы можете просто добавить определенные действия на правильной фазе, что кажется довольно логичным: просто запустите свои интеграционные тесты на этапе интеграции-тестирования. Кроме того, существует много существующих плагинов, которые могут быть почти все. Арбитр Maven - это мощная функция, которая позволяет быстро создавать проект.

Ant лучше контролировать процесс сборки. Перед вашей первой сборкой вам нужно написать build.xml. Если ваш процесс сборки очень специфичен, вам нужно создать сложные сценарии. Для долгосрочных проектов поддержка ant -скриптов может стать очень болезненной: скрипты становятся слишком сложными, люди, которые их пишут, могут покидать проект и т.д.

Оба из них используют xml, который может стать слишком большим в крупных долгосрочных проектах.

Во всяком случае, вы читаете определенную документацию (не ненавистные статьи) на обоих. Кроме того, есть ant -maven-plugin, которые позволяют запускать ant -cripts с maven.

P.S. Вы можете взглянуть на Gradle, что для меня может обеспечить большую свободу, чем Maven, но проще в использовании, чем Ant.