Выполнить build.xml с Maven

Можно ли выполнить build.xml сценарий с Maven?

Этот скрипт проверяет все мои проекты и подпроекты, и я только что привык к использованию maven, раньше я не использовал большую часть ant, и я знаю, что ant можно использовать с Maven. Итак, мой вопрос: как?

2 ответа

Решение

Я действительно не большой поклонник этого подхода (либо использую Ant или Maven, но не ублюдочную смесь), но вы можете использовать внешний build.xml с плагином Maven AntRun:

<project>
  ...
  <build>
    <plugins>
      ...
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-antrun-plugin</artifactId>
        <configuration>
          <tasks>
            <taskdef resource="net/sf/antcontrib/antcontrib.properties"
              classpathref="maven.plugin.classpath" />
            <ant antfile="${basedir}/build.xml">
              <target name="test"/>
            </ant>
          </tasks>
        </configuration>
        <dependencies>
          <dependency>
            <groupId>ant-contrib</groupId>
            <artifactId>ant-contrib</artifactId>
            <version>1.0b3</version>
          </dependency>
        </dependencies>
      </plugin>
    </plugins>
  </build>
</project>

А потом беги mvn antrun:run (или поместите конфигурацию внутри execution если вы хотите привязать плагин AntRun к фазе жизненного цикла, обратитесь к странице использования).

Обновление: если вы используете вещи из ant-contrib, вам нужно объявить это как зависимость плагина. Я обновил конфигурацию плагина, чтобы отразить это. Также обратите внимание на taskdef элемент, который я добавил (я не уверен, что вам нужно classpathref атрибут хотя).

Вы можете выполнять ant-скрипты через плагин Maven-Ant, но зачем вам Ant, чтобы оформить заказ? Разве вы не организовали свои подпроекты в одном дереве?

Другие вопросы по тегам