Какой синтаксис для запуска плагина maven из командной строки.

Я вижу, что это уже было задано здесь: Как запустить плагин Maven из командной строки? но я не очень понимаю ответ. Похоже, синтаксис имеет вид:

mvn foo:bar

Но я не совсем уверен, что такое foo и bar.

В частности, я настроил плагин maven-resource-plugin так:

<plugin>
    <artifactId>maven-resources-plugin</artifactId>
    <version>2.5</version>
    <executions>
        <execution>
            <id>copy-resources</id>
            <phase>prepare-package</phase>
            <goals>
                <goal>copy-resources</goal>
            </goals>
            <configuration>
                <!--configuration here-->
            </configuration>
        </execution>
    </executions>
</plugin>

Я пробовал несколько перестановок mvn artifactId|id|phase|goal:artifactidId|id|phase|goal но никто из них не работает. Я подумал, что перестану пытаться перебить его и попросить Интернет. Кроме того, это где-нибудь задокументировано?

2 ответа

Решение

Есть 3 модели:

groupId:artifactId:version:goal
groupId:artifactId:goal
prefix:goal

Если вы запустите это из местоположения с pom.xml, и вы не указали версию, Maven будет искать соответствующий плагин в разделе сборки. Префикс часто (не всегда) может быть распознан как часть artifactId, например maven-help-plugin имеет префикс help, Документация плагина должна дать вам точный префикс.

Вы бы назвали эту цель плагина следующим образом:

mvn resources:copy-resources

где copy-resources цель плагина, которую вы настроили в POM, и resources это префикс maven-resources-plugin (см. эту ссылку для разрешения префикса плагина).

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