本章内容
·编写Maven插件的一般步骤
·案例:编写一个用于代码行统计的Maven插件
·Mojo标注
·Mojo参数
·错误处理和日志
·测试Maven插件
·小结
本书第7章已经讲过,Maven的任何行为都是由插件完成的,包括项目的清理、编译、测试以及打包等操作都有其对应的Maven插件。每个插件拥有一个或者多个目标,用户可以直接从命令行运行这些插件目标,或者选择将目标绑定到Maven的生命周期。
大量的Maven插件可以从Aapche[1]和Codehaus[2]获得,这里的近百个插件几乎能够满足所有Maven项目的需要。除此之外,还有很多Maven插件分布在Googlecode、Sourceforge、Github等项目托管服务中。因此,当你发现自己有特殊需要的时候,首先应该搜索一下看是否已经有现成的插件可供使用。例如,如果想要配置Maven自动为所有Java文件的头部添加许可证声明,那么可以通过关键字maven plugin license找到maven-license-plugin[3],这个托管在Googlecode上的项目完全能够满足我的需求。
在一些非常情况下(几率低于1%),你有非常特殊的需求,并且无法找到现成的插件可供使用,那么就只能自己编写Maven插件了。编写Maven插件并不是特别复杂,本章将详细介绍如何一步步编写能够满足自己需要的Maven插件。
[1] 网址为:http://maven.apache.org/plugins/index.html。
[2] 网址为:http://mojo.codehaus.org/plugins.html。
[3] 网址为:http://code.google.com/p/maven-license-plugin/。