内容简介:PMD 是一个代码分析器,能够帮助发现常见的编程问题,比如未使用的变量、空的 catch 块、不必要的对象创建等等。最初仅支持 Java 代码,目前还可支持 JavaScript、Salesforce.com Apex 和 Visualforce、PLSQL、A...
PMD 是一个代码分析器,能够帮助发现常见的编程问题,比如未使用的变量、空的 catch 块、不必要的对象创建等等。最初仅支持 Java 代码,目前还可支持 JavaScript、Salesforce.com Apex 和 Visualforce、PLSQL、Apache Velocity、XML 和 XSL 。
PMD 6.35.0 正式发布,本次更新内容如下:
Javascript 模块现在至少需要 Java 8:
我们使用了最新版本的 JavaScript 实现 Rhino 用于解析 JavaScript 代码,至少需要 Java 8。因此我们决定将 pmd-javascript 模块也升级到 Java 8。这意味着,从现在开始,需要一个 Java 8 或更高版本的运行时,以便来分析 JavaScript 代码。PMD 核心仍然只需要 Java 7。
新规则:
此版本附带 3 个新的 Java 规则:
-
[JUnit5TestShouldBePackagePrivate](<https://pmd.github.io/pmd-6.35.0/pmd_rules_java_bestpractices.html#junit5testshouldbepackageprivate>)
强制执行以下约定:JUnit 5 测试应该具有最小的可见性。您可以像下面这样尝试此规则:<rule ref="category/java/bestpractices.xml/JUnit5TestShouldBePackagePrivate" />
-
[CognitiveComplexity](<https://pmd.github.io/pmd-6.35.0/pmd_rules_java_design.html#cognitivecomplexity>)
使用 cognitive complexity 指标来查找过于复杂的代码。该度量标准以多种方式改进了类似的循环复杂性,可以像下面这样尝试此规则:<rule ref="category/java/design.xml/CognitiveComplexity" />
-
[MutableStaticState](<https://pmd.github.io/pmd-6.35.0/pmd_rules_java_design.html#mutablestaticstate>)
查找非最终的非私有静态字段。这些字段破坏了封装,因为可以在程序中的任何位置修改这些字段。可以像下面这样尝试此规则:
<rule ref="category/java/design.xml/MutableStaticState" />
修改后的规则:
- Java 规则
CompareObjectsWithEquals
现在有一个新属性typesThatCompareByReference
。通过这个属性,你可以配置应该通过引用进行比较被列入白名单的类型。默认情况下,java.lang.Enum 和 java.lang.Class 是允许的,但是你可以在这里添加自定义类型。 此外,现在还允许对常量进行比较;
废弃的规则:
- Java 规则 DefaultPackage 已经被弃用,取而代之的是 CommentDefaultAccessModifier;
- Java 规则 CloneThrowsCloneNotSupportedException 已被弃用,没有替换;
修复的问题:
- apex
- core
- doc
- #3230: [doc] 删除语言索引页的 "Edit me" 按钮;
- dist
- #2466: [dist] 分发存档不包括所有批处理脚本;
- java
- #3269: [java] 修复 MethodTypeResolution 中的 NPE;
- java-design
- javascript:
更多详情可查看:https://github.com/pmd/pmd/releases/tag/pmd_releases%2F6.35.0
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- 静态代码检查工具 cppcheck
- 解读Java静态代码块和构造代码块
- 微服务测试之静态代码扫描
- Android 静态代码扫描效率优化与实践
- Java类 静态代码块、构造代码块、构造函数初始化顺序
- 客户端JavaScript代码的静态分析方法
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
产品经理必懂的技术那点事儿
唐韧 / 电子工业出版社 / 2017-1 / 59
《产品经理必懂的技术那点事儿》以非技术背景产品经理了解技术为主题,将技术知识以简单并且易于理解的方式讲述出来,帮助非技术背景产品经理了解技术、学习技术,旨在帮助产品经理高效地与技术人员进行沟通与合作。 《产品经理必懂的技术那点事儿》的主要内容围绕产品经理需要了解的互联网基础技术知识展开,涉及客户端、服务器端、数据库及一些数据处理知识。同时,还就产品经理需具备的一些软实力,例如沟通能力和解决问......一起来看看 《产品经理必懂的技术那点事儿》 这本书的介绍吧!