我开发了自己的Maven插件并将其Mojo注释为:
@Mojo(name="bt-hello-world", defaultPhase=LifecyclePhase.COMPILE)
我在另一个Maven项目中使用此插件:
<project ...>
...
<build>
<plugins>
<plugin>
<groupId>com.bt.maven.learning</groupId>
<artifactId>app-one</artifactId>
<version>1.0-SNAPSHOT</version>
</plugin>
</plugins>
</build>
</project>
它不会被执行。然后我将@Execute(goal="bt-hello-world", phase=LifecyclePhase.COMPILE, lifecycle="default")
添加到Mojo以避免使用<executions>
,但仍然无效。
如果我添加<executions>
,它确实有效。但是,我已经看到使用没有<executions>
的插件的项目,并且他们的目标正在执行。
我错过了什么?