3. Sonar 组成
4. Sonar 集成过程
开发人员在他们的ide中使用SonarLint运行分析本地代码。
开发人员将他们的代码提交到代码管理平台中(SVN,GIT等)
持续集成工具自动触发构建,调用SonarScanner对项目代码进行扫描分析
分析报告发送到SonarQube Server中进行加工
SonarQube Server 加工并且保存分析报告到SonarQube Database中,通过UI显示分析报告
SonarQube安装
预置条件:
1.Java环境(1.8+)
2.MySql数据库(5.6+)
3.SonarQube 7.6
解压后效果图如下:
进入到bin文件夹,效果如下图:
里面支持各种操作系统,选择自己当前的操作系统,效果图如下:
按照顺序依次执行,t、t、t文件,若无错误,启动成功后访问。
效果如下:
到此,SonarQube安装成功
解决Sonarqube项目中的bug总结
①:变量声明后不使用,多余变量
②:方法名、变量名不符合命名规范
例如:方法名、参数名统一使用驼峰命名法(Camel命名法),除首字母外,其他单词的首字母大写,其他字母小写,类名每个组合的单词都要大写;
③:常量命名不规范
禁止缩写。命名尽量简短,不要超过16个字符
采用完整的英文大写单词,在词与词之间用下划线连接,如:DEFAULT_VALUE。
同一组的常量可以用常量类封装在一起,便于引用和维护
④:删除无用的依赖
import中灰色的部分
⑤:禁止使用 System.intln(""); 打印内容
⑥:Controller类中不要抛出异常,需要用try,catch捕获
⑦:删除无用的注释,例如用于测试的代码
⑧:将程序中的 //TODO 尽快完成
Sonarqube扩展性
Sonar实际上是一个Web系统,展现了静态代码扫描的结果,结果是可以自定义的,而真正实现代码扫描的是Sonar Scanner这个工具,另外同时支持多种语言的原理是它的扩展性,通过插件实现的,也就是Java Jar架包,可以在Sonar平台上在线安装或者离线安装。
SonarQube 的插件还可以对 Java 以外的其他编程语言提供支持,对国际化以及报告文档化也有良好的支持。
以上信息由专业从事代理商sonarqube经销商的华克斯于2025/3/9 11:55:57发布
转载请注明来源:http://szhou.mf1288.com/hksxxkj-2846906129.html