5

我看到这里已经问过这个问题:如何从命令行执行 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但没有一个起作用。我想我会停止尝试暴力破解它,而只是询问互联网。另外,这是否记录在任何地方?

4

2 回答 2

11

有3种模式:

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

如果你从一个带有 pom.xml 的位置运行它并且你没有指定版本,Maven 将在 build-section 中搜索匹配的插件。前缀通常(不总是)可以被识别为 artifactId 的一部分,例如maven-help-plugin具有前缀help。插件文档应该为您提供确切的前缀。

于 2015-06-14T20:37:01.270 回答
5

您可以按如下方式调用此插件目标:

mvn resources:copy-resources

copy-resources您在 POM 中配置的插件目标在哪里,并且resources是 的前缀(有关插件前缀解析,maven-resources-plugin 请参阅此链接)。

于 2015-06-14T20:03:36.280 回答