Maven maven-exec-plugin несколько конфигураций исполнения - PullRequest
29 голосов
/ 03 февраля 2010

Можно ли вызвать выполнение maven-exec-plugin (или любого другого плагина) по его идентификатору из командной строки?

Допустим, мой файл pom.xml выглядит так:

<project>
[...]
    <plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>exec-maven-plugin</artifactId>
    <executions>
        <execution>
            <id>foo</id>
            <goals>
                <goal>exec</goal>
            </goals>
            <phase></phase>
            <configuration>
                <executable>echo</executable>
                <arguments>
                    <argument>foo</argument>
                </arguments>
            </configuration>
        </execution>
        <execution>
            <id>bar</id>
            <goals>
                <goal>exec</goal>
            </goals>
            <phase></phase>
            <configuration>
                <executable>echo</executable>
                <arguments>
                    <argument>bar</argument>
                </arguments>
                </configuration>
            </execution>
        </executions>
    </plugin>
[...]
</project>

Теперь можно звонить

Mvn exec: exec

с добавленной магией для запуска выполнения "foo"?

Для любопытных есть альтернативное решение с использованием профилей, доступных здесь: http://www.mail-archive.com/user@mojo.codehaus.org/msg00151.html

Ответы [ 4 ]

23 голосов
/ 10 июля 2015

Теперь возможно, начиная с Maven 3.3.1: см. Улучшение MNG-5768 и Замечания к выпуску Maven 3.3.1

Вы можете вызвать определенную конфигурацию выполнения с помощью следующего синтаксиса:

mvn exec:exec@foo
16 голосов
/ 03 февраля 2010

Нет, это невозможно. Выполнения предназначены для привязки к жизненному циклу (т.е. они не предназначены для вызова в командной строке). Поэтому вам придется использовать трюк с профилем, описанный в предоставленной вами ссылке.

11 голосов
/ 17 августа 2011

Здесь не упоминается, что с Maven 2.2.0, если вы даете запуск любого плагина с идентификатором "default-cli" , то при запуске этого плагина из командной строкиКонфигурация используется.Вы ограничены только одним выполнением по умолчанию каждого плагина, но это только начало.

0 голосов
/ 17 августа 2011

Я думаю, если вы напишите, выполните цель:

org.codehaus.mojo:exec-maven-plugin:¿Version?:exec

у меня это сработало в плагине Eclipse Maven.

...