静态代码检查工具-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 就可以;
PMD安装

2.激活PMD插件。

Ecplise的菜单Project->Properties->PMD。在这个窗体选择要应用的规则。并指定相对重要性,为特定项目具体配置PMD,眼下仅仅须要选中Enable PMD复选框,保留默认规则集。

3.执行PMD。

单击项目资源,右键->PMD->Check code with PMD。在Violation OverView视图中按问题严重程度列出PMD问题。在Violations outLinew右键show Details能够查看更具体的规则描写叙述以及说明规则的演示样例代码。
(PMD可检測一个项目、类、单个文件等等)
PMD安装

4.几种形式的检查结果
PMD安装
PMD安装
右键每条结果,能够进行几个操作
Show Details… :显示明细
Mark as reviewed:(标记为已审查)菜单项。这将向代码加入一个凝视,以指示PMD在这里忽略此问题。
这里写图片描写叙述
Remove violation:能够手工纠正问题。并使用Remove violation(删除违例)直接从列表中删除此问题
clear violations reviews:清除之前 标记

PMD也能够直接检查一个项目,生成多种格式的报告文件
PMD安装

PMD安装
附录:

PMD附带了很多能够直接使用的规则
潜在的bug:空的try/catch/finally/switch语句
未使用的代码:未使用的局部变量、參数、私有方法等
可选的代码:String/StringBuffer的滥用
复杂的表达式:不必须的if语句、能够使用while循环完毕的for循环
反复的代码:拷贝/粘贴代码意味着拷贝/粘贴bugs
循环体创建新对象:尽量不要再for或while循环体内实例化一个新对象
资源关闭:Connect,Result,Statement等使用之后确保关闭掉
此外。还能够自己定义规则。检查Java代码是否符合某些特定的编码规范。

比如,你能够编写一个规则,要求PMD找出全部创建Thread和Socket对象的操作。

也能够依据实际情况更改自带规则的检查内容

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

原文地址:https://www.cnblogs.com/gccbuaa/p/7250245.html