使用sonarqube进行代码分析
在安装好sonarqube后,使用sonarqube对代码进行分析。
前提准备
1.准备项目
在GitHub上拉取了一个java项目,进行测试。
2.配置maven
在maven中进行配置,使maven支持sonarqube。
登录sonarqube,在右上角找到帮助,点击帮助,在帮助中找到教程,点击分析新项目,如图所示:
创建令牌,输入令牌名点击生成,选择你要分析的项目,本文测试项目主要是java语言,使用maven构建,选择好了后在右边看到提示,右边的maven命令。





Sonarqube检测
Sonar是一个用于代码质量管理的开源平台,用于管理源代码的质量,可以从七个维度检测代码质量,通过插件形式,可以支持包括java,C#,C/C++,PL/SQL,Cobol,JavaScrip,Groovy等等二十几种编程语言的代码质量管理与检测
Rules提示
当然,这对于初学来说是一个很好的教程,搞懂这些规则可以避免bugs的出现,提供自己的开发能力。
rule正确实例提示
糟糕的复杂度分布
文件、类、方法等,如果复杂度过高将难以改变,这会使得开发人员难以理解它们, 且如果没有自动化的单元测试,中国sonarqube 扫描报告,对于程序中的任何组件的改变都将可能导致需要的回归测试
重复
显然程序中包含大量粘贴的代码是质量低下的 , sonar可以展示源码中重复严重的地方
缺乏单元测试
sonar可以很方便地统计并展示单元测试覆盖率
没有代码标准
sonar可以通过PMD,sonarqube 扫描报告,CheckStyle,Findbugs等等代码规则检测工具规范代码编写
没有足够的或者过多的注释
没有注释将使代码可读性变差,特别是当不可避免地出现人员变动时,程序的可读性将大幅下降,而过多的注释又会使得开发人员将精力过多地花费在阅读注释上,亦违背初衷
潜在的bug
sonar可以通过PMD,CheckStyle,Findbugs等等代码规则检测工具检测出潜在的bug
糟糕的设计
通过sonar可以找出循环,中国sonarqube 扫描报告,展示包与包、类与类之间的相互依赖关系,可以检测自定义的架构规则;
通过sonar可以管理第三方的jar包可以利用LCOM4检测单个任务规则的应用情况 ,检测耦合
sonarQube项目支持
1、选择项目,创建要要分析的项目

2、创建项目令牌 可以写任意不重复的名称
3、 选择支持项目,我们这里对后台开发常见java项目进行配置,选择开发常用的开发工具maven,如图所示,会生成maven 集成命令,一定要保留下来
4、项目集成soanr
要想让java项目支持mvn 命令,首先要集成sonar maven插件
5、项目分析结果
soanr会自动分析推送的项目
sonarqube 扫描报告-苏州华克斯由苏州华克斯信息科技有限公司提供。苏州华克斯信息科技有限公司拥有很好的服务与产品,不断地受到新老用户及业内人士的肯定和信任。我们公司是商盟认证会员,点击页面的商盟客服图标,可以直接与我们客服人员对话,愿我们今后的合作愉快!