码迷,mamicode.com
首页 > 其他好文 > 详细

静态代码检查工具-PMD初学者入门篇

时间:2015-07-16 16:47:46      阅读:197      评论:0      收藏:0      [点我收藏+]

标签:pmd   静态代码检查工具   java代码检查工具   pmd安装   

前言:
PMD是一款静态代码分析工具,它能够自动检测各种潜在缺陷以及不安全或未优化的代码。
PMD更多地是集中在预先检测缺陷上,它提供了高度可配置的丰富规则集,用户可以方便配置对待特定项目使用那些规则。

安装及使用:
1.在Eclipse中 安装 PMD插件运行方式
ECLIPSE菜单 > HELP > Install New Software >
弹出窗口中在 work with中输入 PMD - http://sourceforge.net/projects/pmd/files/pmd-eclipse/update-site/
,单击后面的”增加” > 确认>
会自动下载插件,下载需要点时间,>选择安装 subclipse 3 即可;
技术分享

2.激活PMD插件。Ecplise的菜单Project->Properties->PMD,在这个窗口选择要应用的规则,并指定相对重要性,为特定项目详细配置PMD,目前只需要选中Enable PMD复选框,保留默认规则集。

3.运行PMD。单击项目资源,右键->PMD->Check code with PMD。在Violation OverView视图中按问题严重程度列出PMD问题。在Violations outLinew右键show Details可以查看更详细的规则描述以及说明规则的示例代码。
(PMD可检测一个项目、类、单个文件等等)
技术分享

4.几种形式的检查结果
技术分享
技术分享
右键每条结果,可以进行几个操作
?Show Details… :显示明细
?Mark as reviewed:(标记为已审查)菜单项,这将向代码添加一个注释,以指示PMD在这里忽略此问题。
技术分享
?Remove violation:可以手工纠正问题,并使用Remove violation(删除违例)直接从列表中删除此问题
?clear violations reviews:清除之前 标记

PMD也可以直接检查一个项目,生成多种格式的报告文件
技术分享

技术分享
附录:

PMD附带了许多可以直接使用的规则
潜在的bug:空的try/catch/finally/switch语句
未使用的代码:未使用的局部变量、参数、私有方法等
可选的代码:String/StringBuffer的滥用
复杂的表达式:不必须的if语句、可以使用while循环完成的for循环
重复的代码:拷贝/粘贴代码意味着拷贝/粘贴bugs
循环体创建新对象:尽量不要再for或while循环体内实例化一个新对象
资源关闭:Connect,Result,Statement等使用之后确保关闭掉
此外,还可以自定义规则,检查Java代码是否符合某些特定的编码规范。例如,你可以编写一个规则,要求PMD找出所有创建Thread和Socket对象的操作。 也可以根据实际情况更改自带规则的检查内容

PMD自带规则及自定义规则,有兴趣可自己研究下;
后续有时间在分享下;

版权声明:本文为博主IDO原创文章,未经博主允许不得转载。

静态代码检查工具-PMD初学者入门篇

标签:pmd   静态代码检查工具   java代码检查工具   pmd安装   

原文地址:http://blog.csdn.net/dieyong/article/details/46911797

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!