运行 命令行中的 Maven 插件的语法是什么。

What is the syntax to run a maven plugin from the command line.

我看到这里已经有人问过了:How to execute maven plugin from command line? 但我真的不明白答案。看起来语法的形式是:

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 的几种排列,但其中 none 有效。我想我会停止尝试暴力破解它,而只是询问互联网。另外,这是否记录在任何地方?

您可以这样称呼此插件目标:

mvn resources:copy-resources

其中 copy-resources 是您在 POM 中配置的插件目标,resourcesmaven-resources-pluginprefix(参见 this link 用于插件前缀解析)。

有 3 种模式:

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

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