Mavenizing ANT project - PullRequest
       26

Mavenizing ANT project

2 голосов
/ 09 февраля 2012

Какой правильный способ придумать проект Ant? у проекта есть файл Ant build.xml с 3 цели .

Я узнал, как настроить pom.xml для запуска задач Ant, но меня беспокоит следующее: http://maven.apache.org/plugins/maven-antrun-plugin/usage.html: "у maven-antrun-plugin есть только одна цель - запустить."

Можно ли определить 3 задачи муравья в моем файле pom.xml и решить, какую цель запускать, основываясь на параметре / свойстве? я должен рассмотреть использование профилей?

Ответы [ 2 ]

2 голосов
/ 10 февраля 2012

Вы можете начать с просмотра этого SO-обсуждения - Что это значит o Mavenize проекта . Выполнение ant-скрипта через maven (используя плагин maven antrun) не совсем то, что нужно.

Ваш скрипт сборки имеет три задачи. Если они такие простые, как clean, compile, jar - тогда maven делает все это как часть жизненного цикла сборки по умолчанию. Все, что вам нужно, это создать файл pom и определить необходимые зависимости.

Если задачи муравья делают более сложные вещи, которые не могут быть выполнены maven, то вы все равно можете посмотреть на использование плагина maven antrun.

Хотели бы вы построить три задачи независимо друг от друга? Если это так, профили это один из способов. Если задачи зависят друг от друга, вам нужно просто вызвать эту задачу из плагина maven antrun, который, в свою очередь, будет вызывать зависимые задачи.

2 голосов
/ 09 февраля 2012

Зависит от задач.Предположительно, ваши 3 цели муравья делают 3 разных билда.Вы можете легко сделать это с помощью профилей (для этого они и нужны).Если вы все сделаете правильно, вы вообще не будете использовать плагин maven-antrun-plugin.Вместо этого вы будете использовать стандартные плагины maven для генерации артефактов (maven-jar-plugin, maven-war-plugin, maven-ear-plugin, сборочный плагин и т. Д.) В зависимости от того, что вы пытаетесь сгенерировать.

Ознакомьтесь с PDF-файлом "Лучшая сборка с Maven", он доступен бесплатно онлайн и отлично подходит для начинающих Maven.

...