【问题标题】:Find the default phase that a Maven plugin binds to查找 Maven 插件绑定到的默认阶段
【发布时间】:2011-12-09 09:02:10
【问题描述】:

给定pom.xml 中的<plugin> 元素,我如何找到它绑定到的默认阶段?

例如,我想知道 maven-war-plugin 在 Maven 生命周期的哪个阶段被执行。

【问题讨论】:

    标签: java maven maven-plugin


    【解决方案1】:

    了解您的项目实际情况的最佳方式是使用mvn help:effective-pom。它不仅显示默认值;它根据您当前的 pom 显示实际情况。

    【讨论】:

    【解决方案2】:

    我对上述回复有疑问。

    这是一个简单的 pom。它使用注解处理器插件,默认绑定到generate-sources,因为我没有指定<phase>

    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
        <modelVersion>4.0.0</modelVersion>
        <groupId>com.test</groupId>
        <artifactId>test-simple</artifactId>
        <version>0.0.1-SNAPSHOT</version>
        <build>
            <plugins>
                <plugin>
                    <groupId>org.bsc.maven</groupId>
                    <artifactId>maven-processor-plugin</artifactId>
                    <version>2.0.5</version>
                    <executions>
                        <execution>
                            <goals>
                                <goal>process</goal>
                            </goals>
                        </execution>
                    </executions>
                </plugin>
            </plugins>
        </build>
    </project>
    

    mvn generate-resources 确实调用了插件...

    $ mvn install
    [INFO] Scanning for projects...
    [INFO]                                                                         
    [INFO] ------------------------------------------------------------------------
    [INFO] Building test-simple 0.0.1-SNAPSHOT
    [INFO] ------------------------------------------------------------------------
    [INFO] 
    [INFO] --- maven-processor-plugin:2.0.5:process (default) @ test-simple ---
    

    然而,扫描mvn help:effective-pom 的输出并没有产生任何关于这个插件的默认绑定的线索。

    $ mvn help:effective-pom |grep generate-sources; echo $?
    1
    

    到目前为止,我发现列出默认阶段绑定的唯一方法是检查插件源。

    【讨论】:

      猜你喜欢
      • 2015-11-05
      • 2012-10-26
      • 2015-04-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-04-28
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多