Maven Antrun не выполняет задачи - PullRequest
10 голосов
/ 08 июня 2011

Я использую плагин Maven AntRun 1.6, и из их примера я не могу написать следующую задачу муравья для выполнения.

Пример URL: http://maven.apache.org/plugins/maven-antrun-plugin/examples/classpaths.html

Я просто получаю следующее сообщение при выполнении mvn antrun: run.Цель муравья не определена - SKIPPED

Что я делаю не так?

Вот мой POM:

        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-antrun-plugin</artifactId>
            <version>1.6</version>
            <executions>
                <execution>
                    <id>compile</id>
                    <phase>compile</phase>
                    <configuration>
                        <target>
                            <property name="compile_classpath" refid="maven.compile.classpath" />
                            <property name="runtime_classpath" refid="maven.runtime.classpath" />
                            <property name="test_classpath" refid="maven.test.classpath" />
                            <property name="plugin_classpath" refid="maven.plugin.classpath" />

                            <echo message="compile classpath: ${compile_classpath}" />
                            <echo message="runtime classpath: ${runtime_classpath}" />
                            <echo message="test classpath:    ${test_classpath}" />
                            <echo message="plugin classpath:  ${plugin_classpath}" />
                        </target>
                    </configuration>
                    <goals>
                        <goal>run</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>

Ответы [ 2 ]

24 голосов
/ 13 июня 2012

попробуйте

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-antrun-plugin</artifactId>
            <version>1.7</version>
            <executions>
                <execution>
                    <id>default-cli</id>
                    <configuration>
                        <target>
                            <property name="compile_classpath" refid="maven.compile.classpath" />
                            <property name="runtime_classpath" refid="maven.runtime.classpath" />
                            <property name="test_classpath" refid="maven.test.classpath" />
                            <property name="plugin_classpath" refid="maven.plugin.classpath" />

                            <echo message="compile classpath: ${compile_classpath}" />
                            <echo message="runtime classpath: ${runtime_classpath}" />
                            <echo message="test classpath:    ${test_classpath}" />
                            <echo message="plugin classpath:  ${plugin_classpath}" />
                        </target>
                    </configuration>
                    <goals>
                        <goal>run</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>

запишите идентификатор

<id>default-cli</id>

и выполните команду

mvn antrun:run

причина для этого: если вы этого не сделаетена самом деле хотите «скомпилировать», запуск «mvn compile» для выполнения чего-то другого может привести к обратным результатам.

7 голосов
/ 08 июня 2011

Поскольку вы настроили подключаемый модуль maven antrun в своем pom.xml, вам нужно только вызвать цель жизненного цикла, настроенную для этого подключаемого модуля. В этом случае

mvn compile

Это сделает необходимое.

...