一、Sonarqube环境准备
Sonar(SonarQube)是一个开源平台,用于管理源代码的质量。Sonar 不只是一个质量数据报告工具,更是代码质量管理平台。支持的语言包括:Java、PHP、C#、C、Cobol、PL/SQL、Flex 等。
一、环境准备
1、JDK安装配置
验证测试:
2、系统配置
Sonarqube的优点:
(1)支持所有语言的检测。一个工具,搞定所有。
(2)灵活扩展,插拔式使用。自定义的代码检测规则,可自定义插件,独立打成JAR包放到SONARQUBE插件目录下,重启即生效,开发使用非常方便。而且自带UT验证框架,开发。
(3)规则支持多租户隔离。租户可定制自己的规则集。
(4)生态强大,业界有诸多插件,与jenkins友好集成。
(5)部署使用便捷。
(6)架构松耦合,通过与maven/jenkins等集成,将代码扫描的计算消耗迁移到业务或者构建方的资源上,极大的提升了自身的吞吐能力。
解决Sonarqube项目中的bug总结
①:变量声明后不使用,多余变量
②:方法名、变量名不符合命名规范
例如:方法名、参数名统一使用驼峰命名法(Camel命名法),除首字母外,其他单词的首字母大写,其他字母小写,类名每个组合的单词都要大写;
③:常量命名不规范
禁止缩写。命名尽量简短,不要超过16个字符
采用完整的英文大写单词,在词与词之间用下划线连接,如:DEFAULT_VALUE。
同一组的常量可以用常量类封装在一起,便于引用和维护
④:删除无用的依赖
import中灰色的部分
⑤:禁止使用 System.intln(""); 打印内容
⑥:Controller类中不要抛出异常,需要用try,catch捕获
⑦:删除无用的注释,例如用于测试的代码
⑧:将程序中的 //TODO 尽快完成
Sonarqube使用范围
通过插件形式,可以支持包括java,C#,C/C++、PL/SQL、Cobol、JavaScrip、Groovy、Ruby等二十五种编程语言的代码质量管理与检测,针对不同的编程语言其所提供的分析方式也有所不同: 对于所有支持的编程语言,SonarQube 都提供源了代码的静态分析功能; 对于某些特定的编程语言,SonarQube 提供了对编译后代码的静态分析功能。
SonarQube支持多种客户端集成方式,包括但不限于scanner客户端、ant、gradle、maven、jenkins、idea插件等。比较常用的为gradle和maven。
以上信息由专业从事中国sonarqube静态安全扫描工具的华克斯于2025/5/1 9:00:38发布
转载请注明来源:http://shanghai.mf1288.com/hksxxkj-2859112056.html