发布于 2016-11-05 00:56:17 | 207 次阅读 | 评论: 0 | 来源: 网友投递
PMD Java代码检查工具
PMD是一种开源分析Java代码错误的工具。与其他分析工具不同的是,PMD通过静态分析获知代码错误。也就是说,在不运行Java程序的情况下报告错误。PMD附带了许多可以直接使用的规则,利用这些规则可以找出Java源程序的许多问题。此外,用户还可以自己定义规则,检查Java代码是否符合某些特定的编码规范。
PMD 5.4.3 和 5.3.8 发布了,
总结
1 feature requests
6 pull requests
17 bug fixes
Feature Requests and Improvements:
#1360: [core] [java] Provide backwards compatibility for PMD configuration file
Pull Requests:
#35: [javascript] Javascript tokenizer now ignores comment tokens.
#103: [java] Fix for 1501: CyclomaticComplexity rule causes OOM when class reporting is disabled
#111: [java] Fix BooleanInstantiationRule for Java 8
#112: [java] Fix ClassCastException on CloneMethodMustImplementCloneable
#113: [java] Fix ClassCastException on SignatureDeclareThrowsException
#119: [plsql] Fix PMD issue 1531- endless loop followed by OOM while parsing (PL)SQL
Bugfixes:
java
#1501: [java] [apex] CyclomaticComplexity rule causes OOM when class reporting is disabled
java-basic/BooleanInstantiation
#1533: [java] BooleanInstantiation: ClassCastException with Annotation
java-comments
#1522: [java] CommentRequired: false positive
java-design/CloseResource
#1479: [java] CloseResource: false positive on Statement
java-imports/UnusedImports
#1529: [java] UnusedImports: The created rule violation has no class name
java-typeresolution/CloneMethodMustImplementCloneable
java-typeresolution/SignatureDeclareThrowsException
#1535: [java] SignatureDeclareThrowsException: ClassCastException with Annotation
java-unusedcode/UnusedLocalVariable
#1484: [java] UnusedLocalVariable: false positive - parenthesis
java-unusedcode/UnusedModifier
#1480: [java] UnusedModifier: false positive on public modifier used with inner interface in enum
plsql
General
API Changes:
New command line parameter for PMD: -norulesetcompatibility
- this disables the ruleset factory compatibility filter and fails, if e.g. an old rule name is used in the ruleset. See also #1360. This option is also available for the ant task: <noRuleSetCompatibility>true</noRuleSetCompatibility>
.
CPD: If no problems found, an empty report will be output instead of nothing. See also #1481
下载地址:
总结:
7 pull requests
16 bug fixes
Pull Requests:
#35: [javascript] Javascript tokenizer now ignores comment tokens.
#103: [java] Fix for 1501: CyclomaticComplexity rule causes OOM when class reporting is disabled
#110: [java] Fix parser error (issue 1530)
#111: [java] Fix BooleanInstantiationRule for Java 8
#112: [java] Fix ClassCastException on CloneMethodMustImplementCloneable
#113: [java] Fix ClassCastException on SignatureDeclareThrowsException
#119: [plsql] Fix PMD issue 1531- endless loop followed by OOM while parsing (PL)SQL
Bugfixes:
Java
java-basic/BooleanInstantiation
#1533: [java] BooleanInstantiation: ClassCastException with Annotation
java-comments
#1522: [java] CommentRequired: false positive
java-design/SingularField
#1494: [java] SingularField: lombok.Data false positive
java-imports/UnusedImports
#1529: [java] UnusedImports: The created rule violation has no class name
java-typeresolution/CloneMethodMustImplementCloneable
java-typeresolution/SignatureDeclareThrowsException
#1535: [java] SignatureDeclareThrowsException: ClassCastException with Annotation
PLSQL
General
下载地址: