让我们说插件里面有几个目标。 例如:
<plugins>
<plugin>
<groupId>sample.plugin</groupId>
<artifactId>hello-maven-plugin</artifactId>
<version>1.0-SNAPSHOT</version>
</plugin>
</pulgins>
或者像这样(没有执行标签,只是配置标签):
<plugin>
<groupId>sample.plugin</groupId>
<artifactId>hello-maven-plugin</artifactId>
<version>1.0-SNAPSHOT</version>
<configuration>
<greeting>Welcome</greeting>
</configuration>
</plugin>
答案 0 :(得分:1)
如果<executions>
不存在,则不会执行插件的目标。简单。但要注意,插件的目标和构建阶段之间存在一些预定义的绑定,这些绑定是由生命周期定义产生的,并且是由工件的打包类型产生的。因此,您不必将maven-compiler-plugin
的{{1}}和compile
目标绑定到正确的阶段,因为它们已经绑定在大多数打包类型的生命周期定义中(例如testCompile
或jar
)。但是这个war
,你刚刚创建的,需要这样的绑定,因为没有人知道它必须被执行。另外,请注意插件的mojos(目标)可以定义其对生命周期阶段的默认绑定,因此有时您只能看到hello-maven-plugin
定义中没有阶段指定的目标。