代码格式检查..docx

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
代码格式检查.

几种工具的对比工具目的检查项FindBugs检查.class基于Bug Patterns概念,查找javabytecode(.class文件)中的潜在bug主要检查bytecode中的bug patterns,如NullPoint空指针检查、没有合理关闭资源、字符串相同判断错(==,而不是equals)等PMD检查源文件检查Java源文件中的潜在问题主要包括:空try/catch/finally/switch语句块未使用的局部变量、参数和private方法空if/while语句过于复杂的表达式,如不必要的if语句等复杂类CheckStyle检查源文件主要关注格式检查Java源文件是否与代码规范相符主要包括:Javadoc注释命名规范多余没用的ImportsSize度量,如过长的方法缺少必要的空格Whitespace重复代码FindBugsFindBugs 大多数提示有用,值得改1.??配置无查找功能,不过缩写能让我们很快找到某个规则2.??提供图形界面的独立程序,对jar进行检测,有报告生成,非常方便3.??很多功能插件没有实现,可独立使用FindBugs,但没法同时修改源码插件bug替代法: 使用独立的FindBugs设置规则,然后到C:\Documents and Settings\XXX\下找.Findbugs_prefs,然后改名覆盖Eclipse Project下的.fbprefs (先关闭你的Project)PMD比较严格1.??独立的程序是命令行形式操作2.??插件可以配置规则,有独立显示问题的视图,也很方便3.??一般来说,需要自定义规则才通过检验过于严格1.?按照Sun的规范太严格了,需要自定义规则2.??插件自定义规则没有查找功能,查找规则麻烦3.??只能做检查,不能修改代码,可配合Jalopy使用修改代码?可参考以下文档进行学习使用:CheckStyle过于严格1.??按照Sun的规范太严格了,需要自定义规则2.??插件自定义规则没有查找功能,查找规则麻烦3.??只能做检查,不能修改代码,可配合Jalopy使用修改代码?参考:/question/129540_23043工具的插件安装PMDPMD检查原理PMD的核心是JavaCC解析器生成器。PMD结合运用JavaCC和EBNF(扩展巴科斯-诺尔范式,Extended Backus-Naur Formal)语法,再加上JJTree,把Java源代码解析成抽象语法树(AST,Abstract Syntax Tree)。显然,这句话不那么好懂,且看下文具体说明。  从根本上看,Java源代码只是一些普通的文本。不过,为了让解析器承认这些普通的文本是合法的Java代码,它们必须符合某种特定的结构要求。这种结构可以用一种称为EBNF的句法元语言表示,通常称为“语法”(Grammar)。JavaCC根据语法要求生成解析器,这个解析器就可以用于解析用Java编程语言编写的程序。不过实际运行中的PMD还要经过JJTree的一次转换。JJTree是一个JavaCC的插件,通过AST扩充JavaCC生成的解析器。AST是一个Java符号流之上的语义层。有了JJTree,语法分析的结果不再是“System, ., out, ., . println”之类的符号序列,而是一个由对象构成的树型层次结构。PMD实现过程实现过程:首先传一个文件名或者Ruleset给pmdPmd把该文件流传给自己生成的javaCC分析器分析完毕后,pmd获得了分析生成的AST的一个引用PMD把AST处理成一个符号表,你可以在符号表里面查询一些有用的信息每个pmd规则都会遍历整个AST并检验是否发生了错误接着pmd产生一个报表,上面说明了有哪些地方违反了pmd规则使用IDE插件1、settings – plugins,有哪些信誉好的足球投注网站PMD,选择QAplugin,点击安装。上图中红线框出来的都需要安装安装完成后,重启IDE插件生效2、Setting-Other Setting-QAPlugin-Coding Rules可以选择需要的代码检查规范。3、在要检查的工程或者代码上右键,选择Analyze Code选择要使用的profile和scope窗口查看检查结果使用命令行下载PMD 软件,解压后在bin目录执行如下命令。D:\workspace\soft\java-plugin\pmd\pmd-bin-5.3.2\binpmd -d D:\workspace\project\my\gps -f xml -R rulesets/java/unusedcode.xml自定义PMD规则编写pmd规则有两种方法:用java code,需要了解pmd的api,需要进行深入研究,也常常用于一些比较复杂的pmd规则用xpath,对

文档评论(0)

kakaxi + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档