本博客地址:https://security.blog.youkuaiyun.com/article/details/82950084
一、PMD概述
1.1、工具说明
PMD是一个代码检查工具,它用于分析Java源代码,找出潜在的问题。
PMD的核心是JavaCC解析器生成器。PMD附带了16个可以直接使用的规则信,利用这些规则可以找出Java源程序的许多问题;此外,PMD规则是可以定制的,可以添加新规则:通过编写Java代码并重新编译PDM,或者更简单些,编写XPath表达式,它会针对每个Java类的抽象语法树进行处理,检查Java代码是否符合某些特定的编码规范。
1.2、PMD基本功能
利用PMD进行静态代码检测可以找出Java源程序的以下问题:
潜在的bug:空的try/catch/finally/switch语句。
未使用的代码:未使用的局部变量、参数、私有方法等。
可选的代码:String/StringBuffer的滥用。
复杂的表达式:不必要的if语句、可以使用while循环完成的for循环。
重复的代码:拷贝/粘贴代码意味着拷贝/粘贴bugs。
循环体创建新对象:尽量不要在for或while循环体内实例化一个新对象。
资源关闭:Connect,Result,Statement等使用之后确保关闭掉。
二、使用PMD
2.1、开始运行
运行PMD最简单的方法是调用