下面是一个简单的Mojo示例:
package sample.plugin; import org.apache.maven.plugin.AbstractMojo; import org.apache.maven.plugin.MojoExecutionException; import org.apache.maven.plugins.annotations.Mojo; /** * Says "Hi" to the user. */ @Mojo(name = "sayhi") public class GreetingMojo extends AbstractMojo { public void execute() throws MojoExecutionException { getLog().info("Hello, world."); } }
编写插件的步骤概述:
创建一个maven-plugin项目:插件本身也是maven项目,只是它的packaging必须是maven-plugin,可以使用maven-archetype-plugin快速创建一个插件项目。
为插件编写目标:每个插件必须包含一个或多个目标,maven称之为Mojo(与POJO对应)。编写插件时必须提供一个或多个继承自AbstractMojo的类。
为目标提供配置点:大部分maven插件以及其目标都是可配置的,因此在编写Mojo的时候需要注意提供可配置的参数。
编写代码实现目标行为:根据实际需要实现Mojo。
错误处理以及日志:当Mojo发生异常时,根据情况控制Maven的运行状态。在代码中编写必要的日志以便为用户提供足够的信息。
测试插件:编写自动化的测试代码测试行为,然后再实际运行插件验证其行为。
一些参考链接: