静态代码扫描工具
静态代码扫描工具
代码规范
ktlint
https://github.com/pinterest/ktlint
什么是 ktlint?
ktlint 是一个自带格式化的静态代码分析工具,可用于规范化 kotlin 代码风格,还可以自动格式化代码,大大节省手动格式化的时间。简单来说,ktlint 是一个包含了 linter 和 formatter 的静态代码分析工具。
安装
ktlint
AS 插件
ktlint
安装后 Tools→ktlint
规则
https://github.com/pinterest/ktlint#standard-rules
禁用规则
没有 * 的导包
Tools→ktlint→Disabled rules
填入:
1
no-wildcard-imports
Datekt
https://github.com/detekt/detekt
Datekt 和 ktlint 区别
ktlint 只能做一些格式上的检查吧,不能获取语义,Detekt 里面包装了一下 ktlint 的规则,是 ktlint 的超集
Ref
- 落地 Kotlin 代码规范,DeteKt 了解一下
https://juejin.cn/post/7152886037746827277
FindBugs
下载:
http://findbugs.sourceforge.net/
manual:
http://findbugs.sourceforge.net/manual/
gradle findbugs 插件
https://docs.gradle.org/3.4.1/dsl/org.gradle.api.plugins.quality.FindBugs.html
FindBugs Bug Descriptions
http://findbugs.sourceforge.net/bugDescriptions.html
FindBugs Category
- Bad practice 坏的实践
- Correctness 一般正确性问题
- Experimental 试验性
- Internationalization 国际化
- Malicious code vulnerability 恶意代码
- Multithreaded correctness 多线程正确性
- Performance 性能问题
- Security 安全性
- Dodgy code
Android Studio 中使用
- 插件:FindBugs-IDEA
参考:
Android 进阶之工具的使用 Findbugs
http://tbfungeek.github.io/2016/06/22/Android-进阶之工具的使用-Findbugs/
本文由作者按照 CC BY 4.0 进行授权