如何判断插件运行的阶段?

时间:2014-01-30 22:45:45

标签: java maven intellij-idea

我在我的pom中使用了一个看起来像这样的插件:

                <plugin>
                    <groupId>org.codehaus.enunciate</groupId>
                    <artifactId>maven-enunciate-plugin</artifactId>
                    <!-- check for the latest version -->
                    <version>1.27</version>
                    <executions>
                        <execution>
                            <goals>
                                <goal>docs</goal>
                            </goals>
                            <configuration>
                                <docsDir>${project.build.directory}/docs</docsDir>
                            </configuration>
                        </execution>
                    </executions>
                </plugin>

我想知道,如果我运行package这个插件会运行还是在site或其他什么时候运行?有没有一种简单的方法可以通过观察这一点来判断,或者我是否需要

  1. 阅读插件文档
  2. 通过反复试验
  3. 我希望有更简单的方法。我使用intellij-idea,如果这提供了一种方法,我会对此感到满意。假设我不能在没有这两种方法之一的情况下告诉,最好的做法是始终在pom中定义阶段,以便我可以在将来节省自己和其他人的时间吗?

1 个答案:

答案 0 :(得分:3)

您可以让maven使用mavens help plugin打印有关插件的信息 - 对于enunciate,只需使用以下命令:

mvn help:describe -Dplugin=org.codehaus.enunciate:maven-enunciate-plugin -Ddetail

实际上有6个目标绑定到不同阶段 - 目标docs将绑定到process-sources-phase

要仅提取您感兴趣的目标,您还可以使用以下命令:

mvn help:describe -Dmojo=docs -DgroupId=org.codehaus.enunciate -DartifactId=maven-enunciate-plugin -Ddetail

您也可以省略-Ddetail部分,但它不会向您提供有关正在运行的阶段的任何信息。