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

Множественные конфигурации выполнения Maven maven-exec-plugin

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

Скажем, файл 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/[email protected]/msg00151.html

4b9b3361

Ответ 1

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

Ответ 3

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

Ответ 4

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

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

он работал у меня в плагине eclipse maven.