PMD是一种可以在Java源代码中使用一个开源的分析。
PMD发现未使用的变量,空的catch块,不必要的对象的创建,等等。
PMD是集成在JDeveloper,Eclipse中,JEDIT,JBuilder中,BlueJ的,CodeGuide上,NetBeans /的Sun Java Studio企业版/造物主,IntelliJ IDEA的,TextPad,Maven的,蚂蚁,凝胶,JCreator中,和Emacs。
什么是此版本的新:
- 错误修正:
- #1364:FieldDeclarationsShouldBeAtStartOfClass假阳性使用多个批注
- #1365:聚合后的javadoc报告缺少
- #1366:UselessParentheses误报多个等式运算符
- #1369:无法正确检测到的StringBuffer ConsecutiveLiteralAppends
- #1372:假阴性的CloseResource规则
- #1375:CloseResource无法正确检测
- #1376:CompareObjectsWithEquals失败注释类型的方法参数
- #1379:PMD CLI:不能指定多个属性
- #1381:CPD不能使用CSV / VS渲染器,因为它们不支持编码属性
什么在5.3.3版本新:
- 错误修正:
- #1364:FieldDeclarationsShouldBeAtStartOfClass假阳性使用多个批注
- #1365:聚合后的javadoc报告缺少
- #1366:UselessParentheses误报多个等式运算符
- #1369:无法正确检测到的StringBuffer ConsecutiveLiteralAppends
- #1372:假阴性的CloseResource规则
- #1375:CloseResource无法正确检测
- #1376:CompareObjectsWithEquals失败注释类型的方法参数
- #1379:PMD CLI:不能指定多个属性
- #1381:CPD不能使用CSV / VS渲染器,因为它们不支持编码属性
什么是5.1.0版本,新的:
- 在该版本增加了对Java 1.8,PLSQL支持,和Apache速度。
什么在5.0.5版本新:
- 这是一个维护版本有许多错误修正
什么在5.0.4版本新:
- 这是一个维护版本有许多错误修正
什么在5.0.3版本新:
- 这是一个维护版本有许多错误修正
什么在5.0.1版本新:
- 在修正错误820:假+ AvoidReassigningParameters
- 修正了1008:PMD-5.0.0:ImmutableField误报自我增/减
- 修正了1009:PMD-5.0.0:假+ UselessParentheses
- 修正了1003:从CPD数据PMD 5.0.0剥离换行符
- 修正了1001 InsufficientStringBufferDeclaration无法解析十六进制
- 修正错误522:InefficientStringBuffering错误虚假+
- 修正错误953:String.InefficientStringBuffering假+
- 修正错误981:无法分析修正了1010:PMD:泛型方法调用的超解析失败
- 修正错误996:PMD-4.2.6:MissingBreakInSwitch没有报告违反
- 修正错误993:无效n路径计算return语句。感谢Prabhjot辛格的补丁。
- 修正了1023:C / C ++ 不支持连续符
- 修正了1033:假+:SingularField
- 修正了1025:回归崩溃PMDTask由于多线程(Eclipse和Java 1.5)
- 修正了1017:类型分辨率的大项目非常缓慢。由于罗马的补丁。
- 修正了1036:文档:从V5.0版修正了1035年删除默认的阈值:UseObjectForClearerAPI有拼写错误信息
- 修正了1031:假DontImportJavaLang
- 修正了1034:UseConcurrentHashMap标志调用返回Map的方法
- 修正了1006:与实施getPackageNameImage方法的问题修正了1014 AvoidLiteralsInIfCondition绝对不能考虑空
- 修正了1013:JNLP链接,CPD是错
- 在PMD命令行的变化:
- 在使用JCommander改进的命令行界面(CLI)解析。注:这打破兼容性,但应该是很容易解决
- 在" -d"您指定要扫描的nowtThe源文件/源目录。
- 在" -f"您选择的报告格式(如文本,HTML,......)
- 在" -R"您选择要使用的规则集。
- 示例:PMD -dc: DATA PMD PMD 测试数据 Unused1.java -f XML-R的规则集/爪哇/ unusedcode.xml
- 改进JSP语法分析器不那么严格,不是有效的XML文档(如HTML)。感谢维克多Bucutea。
- 修正bgastviewer不工作。感谢维克多Bucutea。
- 改进CPD:支持在CPD为IgnoreAnnotations和SuppressWarnings(" CPD-START")。由于太短暂。
- 的CPD固定的C#支持 - 感谢TIOBE软件
- 新的ECMAScript规则:基本规则集:AvoidTrailingComma
什么是5.0.0版新:
- 这是PMD支持其他语言的一个主要版本而新的规则。
- 支持的语言是Java,JavaScript中,XML,XSL和JSP。许多错误已得到修复,新规则增加。
- 与先前版本的内部重构休息的兼容性,而且增加了对其他语言的通用支持。
- 在Maven的坐标也被改变了:net.sourceforge.pmd:PMD
什么是4.2.6版本,新的:
- 在该版本包含错误修正,以现有的规则
- 在它已修改(希望固定)的CPD算法。
- 的JSP / JSF解析器现在可以解析Unicode输入。
- 的JSP / JSP语法分析器现在可以处理......标签。
- 的AST而htmlScript节点包含的内容。
- 在ECMAScript中已添加为CPD支持的语言。
什么是4.2.5版本,新的:
- 在本新闻稿包含错误修正现有的规则,新的AvoidThrowingNewInstanceOfSameException统治strictexception.xml,而新android.xml规则集特定于Android平台的新规则。
什么4.2.3版本新:
- 在JavaCC中生成的构件更新为JavaCC的4.1d1
- 在Java的语法增强,包括AnnotationMethodDeclaration作为AnnotationTypeMemberDeclaration修复方法相关的儿童进行排除,病毒码更新的父节点RuleChain兑现规则集排除-模式升级UselessOperationOnImmutable检测多用的情况下,特别是在串并解决误报修正了1988829 - 违反报告没有源文件名(实际上是一个修复程序ConsecutiveLiteralAppends)修正错误1989814 - 虚假+:ConsecutiveLiteralAppends修正错误1977230 - 假阳性:UselessOverridingMethod修正错误1998185 - BeanMembersShouldSerialize VS @SuppressWarnings("串行")修正错误2002722 - 虚假+在UseStringBufferForStringAppends修正错误2056318 - 假阳性AvoidInstantiatingObjectsInLoops修正错误1977438 - 假阳性UselessStringValueOf修正错误2050064 - 假+ SuspiciousOctalEscape用反斜杠文字修正错误1556594 - 靠不住的检测NullAssignment优化和PreserveStackTrace @SuppressWarnings假阳性修复("所有" )禁止所有的警告所有的注释类型都将存储ASTCompilationUnit,而不仅仅是形式上那些固定的假阴性UselessOverridingMethod固定在UseIndexOfChar和AppendCharacterWithChar转义字符处理
评论没有发现