Sonarqube衡量代码质量的几个指标
1.Bugs Bug是出现了明显错误或是高度近似期望之外行为的代码。
2.漏洞 漏洞是指代码中可能出现被hacker利用的潜在风险点。
3.安全热点 安全敏感代码需要手工审核,以便判断是否存在安全漏洞。
4.异味 代码异味会困扰代码的维护者并降低他们的开发效率。主要的衡量标准是修复它们所需的时间。
5.重复率 新代码中的重复行密度 (%),重复行数,重复代码块
6.行数 程序中代码的行数





SonarQube常见问题
1.忘记密码
执行以下sql将密码还原为admin
2.源码乱码
在Issue中查看源码,中文变成了乱码。需要设置项目的sonar-project.properties文件。
增加红色加粗字体的内容,sonarqube 规则,设置源码的编码为UTF-8。需要重新执行sonar-runner生效。
3.获取163邮箱授权客户端
(1)登录163邮箱
(2)设置 → 常规设置
(3)客户端授权密码 → 开启,会提示需要手机验证码验证,按提示操作即可。
(4)短信验证码验证成功后,可以输入授权码。将该授权码记录下来,方便后续使用。
4.JDK版本
当sonar-scanner所在机器上安装了多个JDK的时候,代理商sonarqube 规则,需要为sonar-scanner的运行JDK版本。修改sonar-scanner_home/bin/sonar-runner.bat
关于SonarQube社区版使用问题及解决方法
解决SonarQube扫描规则问题
在搭建好SonarQube平台后,代理商sonarqube 规则,已经配置好了针对每种语言的"Sonar Way"质量配置。我们在大规模使用中,对扫描Java项目的规则做了一些定制,有一些新增的规则还有一部分弃用的规则,总之大部分还都是默认自带的java规则,配置好规则后并设置为默认的规则。
分析
SonarQube平台中的项目不需要单独的新建,中国sonarqube 规则,而是通过Jenkins构建过程中生成。
当我们需要为项目新的质量配置的时候,通常在Sonar WebUi中进行配置。
无法通过"-Dsonar.xxxx"方式每次分支时使用的质量名称。
应对
由于SonarQube项目都是通过流水线扫描后生成的,于是在流水线中增加步骤。
每次扫描之前先判断项目是否存在,然后新的质量,再执行代码扫描。
华克斯信息-sonarqube 规则由苏州华克斯信息科技有限公司提供。苏州华克斯信息科技有限公司是从事“Loadrunner,Fortify,源代码审计,源代码扫描”的企业,公司秉承“诚信经营,用心服务”的理念,为您提供更好的产品和服务。欢迎来电咨询!联系人:华克斯。