我正在构建一个插件来进行一些代码生成。
我已按照此处的步骤创建插件: http ://maven.apache.org/guides/plugin/guide-java-plugin-development.html
插件来源:
/**
* @goal helloworld
* @phase generate-sources
*/
public class SampleMojo extends AbstractMojo
{
@Override
public void execute() throws MojoExecutionException, MojoFailureException
{
getLog().info("Hello, world.");
}
}
用法:
<plugins>
<plugin>
<groupId>com.sample</groupId>
<artifactId>sample-maven-plugin</artifactId>
<version>0.0.1</version>
<executions>
<execution>
<phase>generate-sources</phase>
<goals>
<goal>helloworld</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
该插件本身工作正常,但在 Eclipse 中,我不断收到“未被生命周期覆盖”错误。
我通读了“如何解决 Spring Data Maven Builds 的“生命周期配置未涵盖的插件执行””,并假设如果我创建自己的插件并设置 @phase 和 @goal 注释,它将摆脱该错误。我真的不想在 pom.xml 中放入“lifecycleMappingMetadata”节点。
有人对此有什么建议吗?我需要为 m2e 编写什么特别的东西才能消除该错误吗?