SonarQube是什么,sonar sonarqube
SonarQube使用方法
Sonar是一个用于代码质量管理的开源平台,用于管理源代码的质量,通过插件形式可以支持包括java,C#,C/C++,PL/SQL等等二十几种编程语言的代码质量管理与检测
使用方法
指标:
Bugs表示系统在运行中因为程序本身有错误而造成的功能不正常、死机、数据丢失、非正常中断等现象;
漏洞表示系统存在安全隐患容易被攻击;
坏味道表示不好的编码习惯;
重复率表示代码中存在有相同的代码,这样不利于维护。
查看检查出的错误:
查看检查后的错误信息
IDEA中配置Sonar
1、安装Sonarlint
2、配置Sonar
Token:a9f8937c33a5ac39dfe459ecacc6ecceb0a4da95
配置完成后
点击SonarLint显示
Sonar的构建时间
每周五晚上11点定时构建,同时每次提交代码至SVN后在当天晚上的11点自动构建
sonarqube是用来做什么管理的
Sonar简介
Sonar是一个用于代码质量管理的开源,用于管理源代码的质量,可以从七个维度检测代码质量
通过插件形式,可以支持包括java,C#,C/C++,PL/SQL,Cobol,JavaScrip,Groovy等等二十几种编程语言的代码质量管理与检测
sonarQube能带来什么?
Developers' Seven Deadly Sins
糟糕的复杂度分布
文件、类、方法等,如果复杂度过高将难以改变,这会使得开发人员难以理解它们,
且如果没有自动化的单元测试,对于程序中的任何组件的改变都将可能导致需要全面的回归测试
2.重复
显然程序中包含大量复制粘贴的代码是质量低下的
sonar可以展示源码中重复严重的地方
3.缺乏单元测试
sonar可以很方便地统计并展示单元测试覆盖率
4.没有代码标准
sonar可以通过PMD,CheckStyle,Findbugs等等代码规则检测工具规范代码编写
5.没有足够的或者过多的注释
没有注释将使代码可读性变差,特别是当不可避免地出现人员变动时,程序的可读性将大幅下降
而过多的注释又会使得开发人员将精力过多地花费在阅读注释上,亦违背初衷
6.潜在的bug
sonar可以通过PMD,CheckStyle,Findbugs等等代码规则检测工具检测出潜在的bug
Sonarqube报错解决方法
错误一:
ERROR: Error during SonarQube Scanner execution
org.sonar.java.AnalysisException: Please provide compiled classes of your project with sonar.java.binaries property
解决方法:sonar.java.binaries没写
错误二:
WARN: Unable to locate 'report-task.txt' in the workspace. Did the SonarScanner succedeed?
ERROR: SonarQube scanner exited with non-zero code: 1
解决方法:配置一下scm和svn
错误三:
ERROR: Error during SonarQube Scanner execution
org.sonarsource.scanner.api.internal.ScannerException: Unable to execute SonarQube
解决方法:Jenkins上的SonarQube servers配置不正确
其他错误:
(1)JDK版本不对,解决方法是修改sonarqube-7.1/conf目录下的wrapper.conf文件
sonarqube连接数据库的作用是什么?
存储扫描规则和问题,网页的数据都来自数据库!你自己搭建的服务器,不管是sonarqube还是其他的都需要存数据啊!
sonarqube sqale 什么意思
sonar
生词本
英 [?s??nɑ:(r)] 美 [?so?nɑ:(r)]
n.声呐装置,声呐系统; 声呐兵
网 络
声纳;声呐;声波定位仪;声讷
复数: sonars