正文
Findbugs 的检测器已增至 300 多条,被分为不同的类型,常见的类型如下:
-
Correctness
:这种归类下的问题在某种情况下会导致
Bug
,比如错误的强制类型转换等。
-
Bad practice
:这种类别下的代码违反了公认的最佳实践标准,比如某个类实现了 equals 方法但未实现 hashCode 方法等。
-
Multithreaded correctness
:关注于同步和多线程问题。
-
-
-
Dodgy
:Findbugs 团队认为该类型下的问题代码导致
Bug
的可能性很高。
3、引入 CheckStyle 插件
CheckStyle 作为检验代码规范的插件,除了可以使用配置默认给定的开发规范,如 Sun、Google 的开发规范之外,还可以使用像阿里的开发规范的插件。
目前国内用的比较多的是阿里的代码开发规范,我们可以直接通过 IDEA 下载插件:
如果想检测某个文件:
可以看到结果:
阿里巴巴规约扫描包括:
Alibaba Java Coding Guidelines 专注于 Java 代码规范,目的是让开发者更加方便、快速规范代码格式。
该插件在扫描代码后,将不符合规约的代码按 Blocker、Critical、Major 三个等级显示出来,并且大部分可以自动修复。
它还基于 Inspection 机制提供了实时检测功能,编写代码的同时也能快速发现问题。
4. 用 SonarQube 扫描代码