PMD 的介绍,用法,在项目中的应用
2010-05-12 15:47
148 查看
PMD介绍
PMD是扫描 Java 源码并查找以下潜在问题:
从未用过的局部变量
空捕捉块(catch block)
从未用过的参数
空if声明
重复的导入声明
从未用过的私有方法
孤立的类
短型或长型变量及方法名
PMD 具有下列软件的插件:JEdit, JBuilder, NetBeans/Sun ONE Studio, IntelliJ
IDEA, TextPad, Maven, Ant, Eclipse, Gel, Emacs
1、PMD 的含义
坦率地说,我们其实也不知道PMD的真正意义所在 (我们只是认为这三个字母拼在一起较为好听) 。但是,我们提出了计算行业的几种解释以供参考。
PMD:
Pretty Much Done (几乎无所不能)
Project Mess Detector (项目故障探测器)
Project Monitoring Directives (项目监视器)
Protein Mutant Database (基因突变数据库)
Project Meets Deadline (项目到期)
Programming Mistake Detector (程序错误检测器)
Pounds Mistakes Dead (彻底纠错)
PMD Meaning Discovery (PMD含义探索)
2、PMD运行机制
PMD 根据规则核对源码并产生一个报告。具体如下:
有文件名和RuleSet传入PMD
PMD将通过该文件的InputStream传递给由JavaCC-生成的解析器
PMD 从解析器取得指向抽象语法树(AST)的引用
RuleSet 中的每个规则都遍历AST 并检查错误
报告内容包括RuleViolations以及符合XML 、HTML 或其它格式的代码/文件
PMD用法
1.要使用PMD,先要下载PMD插件,在Eclipes点HELP,选择Softwareupdates,然后选Available
Software 而后就点右边的Add Site 将
http://pmd.sourceforge.net/eclipse/
-输入,-点击http://pmd.sourceforge.net/eclipse/
会出现PMD for Eclipse2与 PMD for Eclipse 3 选择其中一个PMD
for Eclipse2
然后就点Install,这样配置就行了。
2. 但是其规范太过于严格,因尔我们只能采用其相对于大众而言的一些规范,然而我们要去http://www.springside.org.cn/download.php
下
载一个springside3.0.4.all.in.one,,然后在项目->属性->PMD中,将
springside.0.4.all.in.one/tools/configures/pmd /springside3_ruleset.xml
导入到项目中。更改设置后,需要重新export文件,并clear原来的标签,重新再check一次。
3.上面这些都弄好了之后,如果你发现他不能在你写代码的时候及时给予提示,那就是你在倒入
springside.0.4.all.in.one/tools/configures/pmd
/springside3_ruleset.xml时,然后要把Enable PMD
与Include derived files
两个都选上就可以了。
4.这些配好了之后,在你选择工程点击右键,选择PMD之后有几个选项:
Generate reports: 生成报告,生成在你的工程目录下的reports里
Clear violation reviews
Find suspect Cut And Paste..:是检查指种后缀的文件。如JAVA,JSP等
Check Code With PMD 就是检查代码。
做好以上步骤以后就会在项目中静态的检测你每一行的代码,如果有不符合要求的会出现
警告。
PMD是扫描 Java 源码并查找以下潜在问题:
从未用过的局部变量
空捕捉块(catch block)
从未用过的参数
空if声明
重复的导入声明
从未用过的私有方法
孤立的类
短型或长型变量及方法名
PMD 具有下列软件的插件:JEdit, JBuilder, NetBeans/Sun ONE Studio, IntelliJ
IDEA, TextPad, Maven, Ant, Eclipse, Gel, Emacs
1、PMD 的含义
坦率地说,我们其实也不知道PMD的真正意义所在 (我们只是认为这三个字母拼在一起较为好听) 。但是,我们提出了计算行业的几种解释以供参考。
PMD:
Pretty Much Done (几乎无所不能)
Project Mess Detector (项目故障探测器)
Project Monitoring Directives (项目监视器)
Protein Mutant Database (基因突变数据库)
Project Meets Deadline (项目到期)
Programming Mistake Detector (程序错误检测器)
Pounds Mistakes Dead (彻底纠错)
PMD Meaning Discovery (PMD含义探索)
2、PMD运行机制
PMD 根据规则核对源码并产生一个报告。具体如下:
有文件名和RuleSet传入PMD
PMD将通过该文件的InputStream传递给由JavaCC-生成的解析器
PMD 从解析器取得指向抽象语法树(AST)的引用
RuleSet 中的每个规则都遍历AST 并检查错误
报告内容包括RuleViolations以及符合XML 、HTML 或其它格式的代码/文件
PMD用法
1.要使用PMD,先要下载PMD插件,在Eclipes点HELP,选择Softwareupdates,然后选Available
Software 而后就点右边的Add Site 将
http://pmd.sourceforge.net/eclipse/
-输入,-点击http://pmd.sourceforge.net/eclipse/
会出现PMD for Eclipse2与 PMD for Eclipse 3 选择其中一个PMD
for Eclipse2
然后就点Install,这样配置就行了。
2. 但是其规范太过于严格,因尔我们只能采用其相对于大众而言的一些规范,然而我们要去http://www.springside.org.cn/download.php
下
载一个springside3.0.4.all.in.one,,然后在项目->属性->PMD中,将
springside.0.4.all.in.one/tools/configures/pmd /springside3_ruleset.xml
导入到项目中。更改设置后,需要重新export文件,并clear原来的标签,重新再check一次。
3.上面这些都弄好了之后,如果你发现他不能在你写代码的时候及时给予提示,那就是你在倒入
springside.0.4.all.in.one/tools/configures/pmd
/springside3_ruleset.xml时,然后要把Enable PMD
与Include derived files
两个都选上就可以了。
4.这些配好了之后,在你选择工程点击右键,选择PMD之后有几个选项:
Generate reports: 生成报告,生成在你的工程目录下的reports里
Clear violation reviews
Find suspect Cut And Paste..:是检查指种后缀的文件。如JAVA,JSP等
Check Code With PMD 就是检查代码。
做好以上步骤以后就会在项目中静态的检测你每一行的代码,如果有不符合要求的会出现
警告。
相关文章推荐
- gulp的使用介绍和项目应用到的插件介绍
- AngularJS实际项目应用——前端工具介绍
- 使用react-native做一个简单的应用-01项目介绍
- Vue作为组件在前端项目中的应用&Vue.set 的用法
- webService的介绍及项目应用
- css注释和html注释用法及应用范围介绍
- 开源物联网框架ServerSuperIO(SSIO),项目中实践应用介绍
- 监听器用法(listener)应用到j2ee项目中
- JavaScript介绍-百度百科本词条由“科普中国”百科科学词条编写与应用工作项目 审核
- ArcGIS在线应用介绍(6)北温哥华区市政项目查询系统
- 应用Rational 工具简化基于J2EE的项目:第一部分 介绍
- Lua介绍极其在C#项目中的应用
- 企业级应用项目工程介绍
- 基于SyncML的funambol dm开源项目的改造应用(三) - 实际项目介绍
- UCP规模估算方法介绍 基于UCP方法的软件项目成本估计及其应用方法,软件,项目,UCP方法,应用,项目估算及软件及应用,软件估算,项目成本,软件项目
- css注释和html注释用法及应用范围介绍
- Android Map新用法:MapFragment应用介绍
- Android项目开发全程(二)--Afinal用法简单介绍
- Java 加解密类的功能用法介绍及实际项目中数据加密解密的解决办法
- iOS 9应用开发教程之创建iOS 9项目与模拟器介绍