随着我们项目中的代码越来越多,规模越来越庞大,检查代码是我们要做的功能, 下面介绍几个静态代码质量分析的插件,第一个是findbugs静态代码分析工具,
这个是codehaus产的插件,我们项目中使用的tomcat插件就是这家公司写的,废话不多说,pom中添加插件如下
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>findbugs-maven-plugin</artifactId>
<version>2.5.2</version>
<configuration>
<xmlOutput>true</xmlOutput>
</configuration>
</plugin>
在Eclipse中执行如下的命令,findbugs:findbugs,在执行中网速要快,要不然某些jar可能下载出错,或者多下几次才可以
默认是输出到target目录下,并且只有在target目录下有classes才会执行,所以一定编译后才会产生报告,有一点就是产生的报告是xml的,打开观看不方便,为了生成html的格式,我们在pom中添加如下的节点让其生成html
<reporting>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>findbugs-maven-plugin</artifactId>
<version>2.5.2</version>
</plugin>
</plugins>
</reporting>
在reporting中使用的plugin只有使用site插件的时候才会使用reporting中的plugin。
所以这时候加入site的插件
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-site-plugin</artifactId>
<version>3.3</version>
<configuration>
<locales>zh_CN</locales>
</configuration>
</plugin>
运行site,在target目录下的site就会生成findbugs.html,内容如下方便我们进行查看一些静态代码的问题
这一篇的代码还是和代码有关的插件,pmd Java程序代码检查工具 ,用来检查我们代码中的代码格式等等。pom中在build中配置如下
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-pmd-plugin</artifactId>
<version>2.5</version>
</plugin>
运行pmd:pmd会生成basic.xml,imports.xml,pmd.xml,unusedcode.xml帮助我们检查代码中的无用代码,冗余代码代码,使用build运行会生成xml,所以为了方便使用加入reporting中,使用site命令来生成html报告
会在site目录下生成cpd.html找出所有的重复的代码,pmd.html是一些格式的检查
findbugs最新版已经到了3.0,这里我们采用的是2.5.2。
findbugs 官方网站
http://findbugs.sourceforge.net/
,支持jenkins hudson的插件
findbugs的相关资源下载地址以及源码下载地址
http://repo1.maven.org/maven2/org/codehaus/mojo/findbugs-maven-plugin/