maven有不少相关插件,主要有:css
checkstyle
Checkstyle 是 SourceForge 的开源项目,经过检查对代码编码格式,命名约定,Javadoc,类设计等方面进行代码规范和风格的检查,从而有效约束开发人员更好地遵循代码编写规范。java
FindBugs
FindBugs 是由马里兰大学提供的一款开源 Java 静态代码分析工具。基于Bug Patterns概念,查找javabytecode(.class文件)中的潜在bugmaven
pmd
PMD 是由 DARPA 在 SourceForge 上发布的开源 Java 代码静态分析工具。主要分析java源文件有没有潜在的bug,重复的代码,多度复杂的表达式等等。工具
Jdepend
主要用来分析代码的依赖及健壮性,它遍历Java class的文件目录,以Java包(package)为单位,为每个包/类自动生成 包的依赖程度,稳定性,可靠度等的评价报告,根据这些报告,咱们能够获得包或类之间的依赖关系,并分析出包的稳定程度,抽象程度,是否存在循环依赖关系等。测试
simian
现有的版本是基于maven1仓库的,并且有版权的问题,能够使用pmd来替代ui
javancss
代码的度量工具,检查java源文件、类、方法等更细粒度的指标,提供圈复杂度编码
cobertura
提供代码测试覆盖率spa
emma
也是代码测试覆盖率,可是版本较旧,可用cobertura来替代.net
taglist
用来检测代码里头的TODO插件
duplicateFinder
提供重复依赖检查
FindBugs Plug-in
Checkstyle Plug-in
PMD Plug-in
在Jenkins的Build中设置
clean package findbugs:findbugs checkstyle:checkstyle pmd:pmd
并在构建设置中选中
Publish Checkstyle analysis results
Publish FindBugs analysis results
Publish PMD analysis results
Sonar是代码质量管理平台,它提供了插件扩展机制,能够支持PMD、FindBug、checkstyle等,对于Java项目默认执行CheckStyle, FindBugs以及PMD检测,同时也对检测结果进行存储,而后提供了可视化的面板,能够查看相关趋势。