一、目标
idea集成sonar的代码检查,实现可以在提交代码前就检查你的代码,而不是将代码提交之后,之后再去检查。
Sonar可以从以下七个维度检测代码质量,而作为开发人员至少需要处理前5种代码质量问题
1. 不遵循代码标准 sonar可以通过PMD,CheckStyle,Findbugs等等代码规则检测工具规范代码编写
2. 潜在的缺陷 sonar可以通过PMD,CheckStyle,Findbugs等等代码规则检测工具检测出潜在的缺陷
3. 糟糕的复杂度分布 文件、类、方法等,如果复杂度过高将难以改变,这会使得开发人员难以理解它们 且如果没有自动化的单元测试,对于程序中的任何组件的改变都将可能导致需要全面的回归测试
4. 重复 显然程序中包含大量复制粘贴的代码是质量低下的,sonar可以展示源码中重复严重的地方
5. 注释不足或者过多 没有注释将使代码可读性变差,特别是当不可避免地出现人员变动时,程序的可读性将大幅下降 而过多的注释又会使得开发人员将精力过多地花费在阅读注释上,亦违背初衷
6. 缺乏单元测试 sonar可以很方便地统计并展示单元测试覆盖率
7. 糟糕的设计 通过sonar可以找出循环,展示包与包、类与类之间相互依赖关系,可以检测自定义的架构规则 通过sonar可以管理第三方的jar包,可以利用LCOM4检测单个任务规则的应用情况, 检测耦合。
二、前提
- 已经搭建了sonarqube
- jdk8环境(我的是jdk7,运行也没问题)
三、安装插件
设置——>Plugins中查找sonarLint插件,并安装。 安装完成后,要重启IDEA。
四、配置项目
1)配置服务器
我这里是编辑形式打开的弹窗,第一次添加时,是需要自己添加自己使用的sonar平台地址,一般是公司内部搭建的地址
2)选择项目
上面配置好服务器的信息之后,就会获取到相应项目的信息,如下:
配置完成后,在当前项目环境下,idea的左下角就可以看到sonar扩展了:
五、运行
作者:布客飞龙
segmentfault.com/a/1190000006033999
往期精选 点击标题可跳转
使用 Intellij IDEA 实时模版完美解决 Java8 的数据流问题
Spring Boot 2.x 推荐缓存框架 Caffeine 高性能设计剖析
在 Java 项目中,如何使用 Error 日志更加方便排查问题,这才是正确姿势,非常实用!
19 张思维导图带你梳理 Spring Cloud 体系中的重要知识点!
还在手动部署 Spring Boot 项目?使用 Docker 真香!
【Stackoverflow 问题】为什么资深的程序员都不用 “ ! = null " 做判空?
你还在使用 BeanUtils 来做对象转换吗?快试试 MapStruct 吧!
Spring boot 集成阿里开源 Sentinel 限流神器,轻松搞定接口限流!
点个赞,就知道你“在看”!