代码规范工具-Checkstyle使用手册



<p>&nbsp; &nbsp; &nbsp; 前段时间中心需要对外包的项目进行代码质量管理,所以在此对前段时间的工作做下总结。</p>
<p>&nbsp; &nbsp; &nbsp; 现在很多开源工具都可以对代码进行规范审核,比较流行的有以下几款,大致给个简单介绍。</p>
<p>&nbsp; &nbsp; &nbsp;PMD:是一款采用BSD协议发布的<a href="http://lib.csdn.net/base/javase" class="replace_word" title="Java SE知识库" target="_blank" style="color:#df3434; font-weight:bold;">Java</a>程序代码检查工具,可以做到检查Java代码中是否含有未使用的变量、是否含有空的抓取块、是否含有不必要的对象等。<br>
&nbsp; &nbsp; &nbsp;FindBugs:是一个静态分析工具,它检查类或者 JAR 文件,将字节码与一组缺陷模式进行对比以发现可能的问题。<br>
&nbsp; &nbsp; &nbsp;Checkstyle:是一个静态分析工具,检查Java程序代码。<br>
&nbsp; &nbsp; &nbsp;Cppcheck是一种C/C++代码缺陷静态检查工具。<br>
  &nbsp;PC-Lint也是一种静态代码检测工具,检查C或C++。</p>
<p>&nbsp; &nbsp; &nbsp; 目前,中心使用的是Checkstyle工具。我个人觉得PMD和Checkstyle很类似,都可以以插件的形式集成到Eclipse或是MyEclipse开发环境中。下面就Checkstyle在Eclipse中的使用详细介绍下,同时,也欢迎大家继续补充。</p>
<p></p>
<p>1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Checkstyle的下载和安装</p>
<p>1.1&nbsp; Checkstyle的下载</p>
<p>&nbsp; &nbsp; &nbsp; Checkstyle可以从其官网<a href="http://checkstyle.sourceforge.net/%E4%B8%AD%E4%B8%8B%E8%BD%BD%E3%80%82%E5%AE%98%E7%BD%91%E4%B8%AD%E8%BF%98%E6%8F%90%E4%BE%9B%E4%BA%86Checkstyle">http://checkstyle.sourceforge.net/</a>中下载。官网中还提供了Checkstyle的相关文档,如配置文件、代码检查项等,内容比较丰富,覆盖面也较齐全。可依据自身需要,参考官网上的相关资料。进入Checkstyle的官网后,进入Download页面,可以下载Checkstyle。目前,大多数开发项目使用Eclipse或是MyEclipse的集成开发环境,因此我推荐进入<a href="http://en.sourceforge.jp/projects/sfnet_eclipse-cs/releases/">http://en.sourceforge.jp/projects/sfnet_eclipse-cs/releases/</a>下载,该网站上有EclipseCheckstyle
 Plug-in的各种版本。下文的介绍中,我采用的是<a href="http://sourceforge.net/projects/eclipse-cs/files/latest/download?source=files" title="/Eclipse Checkstyle Plug-in/5.5.0/net.sf.eclipsecs-updatesite_5.5.0.201111092104-bin.zip:  released on 2011-11-09 21:33:14 UTC"><strong><span style="color:#006699">net.sf.eclipsecs-updatesite_5.5.0.201111092104-bin.zip</span></strong></a>版本的Checkstyle插件。</p>
<p>1.2&nbsp;&nbsp;Checkstyle的安装</p>
<p>&nbsp; &nbsp; 以下的安装过程,基于Eclipse SDK-3.7.2。</p>
<p>&nbsp; &nbsp;(1)<span style="font-family:Helvetica,Tahoma,Arial,sans-serif; font-size:14px; line-height:25px; text-align:left">打开eclipse,</span><span style="font-family:Helvetica,Tahoma,Arial,sans-serif; font-size:14px; line-height:25px; text-align:left">在help中选择install
 software。</span></p>
<p style="margin-top:0px; margin-bottom:0px; padding-top:0px; padding-bottom:0px; font-family:Helvetica,Tahoma,Arial,sans-serif; font-size:14px; line-height:25px; text-align:left">
<span style="white-space:pre">(2)点击</span>add, 选择中Checkstyle安装包net.sf.eclipsecs-updatesite_5.5.0.201111092104-bin.zip;</p>
<p style="margin-top:0px; margin-bottom:0px; padding-top:0px; padding-bottom:0px; font-family:Helvetica,Tahoma,Arial,sans-serif; font-size:14px; line-height:25px; text-align:left">
&nbsp; &nbsp;<img src="" alt=""><img src="" alt=""><img src="" alt=""><img src="" alt=""><img src="" alt=""><img src="" alt=""><img src="https://img-my.csdn.net/uploads/201206/16/1339828752_5334.jpg" alt=""></p>
<p style="margin-top:0px; margin-bottom:0px; padding-top:0px; padding-bottom:0px; font-family:Helvetica,Tahoma,Arial,sans-serif; font-size:14px; line-height:25px; text-align:left">
<span style="white-space:pre"></span>(3)点击OK,进入下一步;</p>
<p style="margin-top:0px; margin-bottom:0px; padding-top:0px; padding-bottom:0px; font-family:Helvetica,Tahoma,Arial,sans-serif; font-size:14px; line-height:25px; text-align:left">
<span style="white-space:pre"></span>(4)重启Eclipse。</p>
<p style="margin-top:0px; margin-bottom:0px; padding-top:0px; padding-bottom:0px; font-family:Helvetica,Tahoma,Arial,sans-serif; font-size:14px; line-height:25px; text-align:left">
&nbsp; &nbsp; &nbsp; &nbsp; 确认安装成功的步骤:</p>
<p style="margin-top:0px; margin-bottom:0px; padding-top:0px; padding-bottom:0px; font-family:Helvetica,Tahoma,Arial,sans-serif; font-size:14px; line-height:25px; text-align:left">
&nbsp; &nbsp; &nbsp;打开eclipse,选择window-&gt;preferences-&gt;左边导航栏中Checkstyle,如果出现checkstyle说明你安装成功。</p>
<p style="margin-top:0px; margin-bottom:0px; padding-top:0px; padding-bottom:0px; font-family:Helvetica,Tahoma,Arial,sans-serif; font-size:14px; line-height:25px; text-align:left">
<img src="https://img-my.csdn.net/uploads/201206/16/1339828836_3115.jpg" alt=""><br>
</p>
<p style="margin-top:0px; margin-bottom:0px; padding-top:0px; padding-bottom:0px; font-family:Helvetica,Tahoma,Arial,sans-serif; font-size:14px; line-height:25px; text-align:left">
<img src="" alt=""></p>
<p>2 &nbsp;Checkstyle的配置</p>
<p>&nbsp; &nbsp; &nbsp;Checkstyle默认提供的配置文件有两个:一是Sun Checks,对应的配置文件是sun_checks.xml文件,含义是Checkstyle configuration that checks the sun coding conventions;一般Checkstyle默认的设置就是sun_checks.xml配置文件。另一个是Sun Checks(Eclipse),对应的配置文件是sun_checks_eclipse.xml,含义是Slightly modified version
 of Sun Checks that better matches the default code formatter setting of Eclipse.<br>
</p>
<p>&nbsp; &nbsp; &nbsp;一般Sun Checks的检查项限定得较为严格,我们实际项目中并不要求那么完美的编程规范,那么可以自己定义检查的配置文件,最后将Checkstyle的配置文件设定为我们自定义的文件即可。关于检查项的设定,我会是下面章节中讲解。先来看看Checkstyle如何快速使用吧。</p>
<p>3 &nbsp;Checkstyle的快速入门使用</p>
<p>&nbsp; &nbsp;Checkstyle安装好之后,就可以使用它来检查我们的代码啦。<br>
</p>
<p>3.1 使用Checkstyle检查单个java文件</p>
<p>&nbsp; &nbsp;选中文件,右击选择Checkstyle,选择Check Code with&nbsp;Checkstyle。</p>
<p><img src="https://img-my.csdn.net/uploads/201206/16/1339829040_3276.jpg" alt=""><br>
</p>
<p><img src="" alt=""><br>
</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; 此时,看看原文件的变化吧。原文件上会在不符合规范的地方出现黄颜色!号,鼠标停留在叹号处,可以看到信息提示。或者,在Console控制台一栏,可以看到Checkstyle violations 的视图,里面会有信息提示。</p>
<p><img src="https://img-my.csdn.net/uploads/201206/16/1339829095_4912.jpg" alt=""><br>
</p>
<p><img src="" alt=""><br>
</p>
<p>&nbsp; &nbsp; &nbsp;选择Checksty violations chart视图,会把每种不规范的信息做下统计,绘制成图表,够人性化吧,哈哈哈。</p>
<p><img src="https://img-my.csdn.net/uploads/201206/16/1339829132_7363.jpg" alt=""><br>
</p>
<p><img src="" alt=""><br>
</p>
<p>3.2 使用Checkstyle检查整个项目<br>
</p>
<p>&nbsp; &nbsp; 在项目名上,右击选择Checkstyle,选择Check Code with&nbsp;Checkstyle。</p>
<p><img src="https://img-my.csdn.net/uploads/201206/16/1339829215_6490.jpg" alt=""><br>
</p>
<p>&nbsp; &nbsp;查看不规范的信息,方法同3.1节一样。</p>
<p><img src="" alt=""><br>
</p>
<p>&nbsp; Checkstyle 也可以检查整个包的文件,或者某一代码段的文件。具体的,大家可以依据需要,我不再一一介绍。<br>
</p>
<p>4、Checkstyle的各种检查项</p>
<p>&nbsp; &nbsp; &nbsp; 前面说到用户可以自定义各种检查项,下面给大家介绍下Checkstyle中各种常用的检查项。在第五部分中,我会介绍如何依据检查的需求来定制检查文件。</p>
<p>&nbsp; &nbsp; &nbsp; 因篇幅局限,为了让大家不至于看得太累,也为讲得更透彻,我把Checkstyle的检查项配置内容单独写为一篇博客。有兴趣的读者可浏览《<a href="http://www.blogjava.net/askcuix/archive/2009/02/08/253775.html" style="background-color:white"><strong><span style="color:gray">Checkstyle</span><span style="color:gray">的检查项配置详解</span></strong></a><br>
》一文。</p>
<p>&nbsp; &nbsp; &nbsp;欢迎大家参与讨论,以期待继续改进。</p>
<p><br>
</p>
<p><br>
</p>
<p><br>
</p>
<p><br>
</p>
<p>&nbsp; &nbsp;&nbsp;</p>
<p><br>
</p>
<p><br>
</p>
   

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值