1.0 简介
SonarQube是一款用于代码质量管理的开源工具,它主要用于管理源代码的质量。通过插件形式,可以支持众多计算机语言,截止至目前,最新版本已更新至8.9(注意:新版本中很多插件不支持,下方链接中的版本为8.8)。
比如java, C#, go,C/C++, PL/SQL,Cobol,JavaScrip,Groovy等。sonar可以通过PMD,CheckStyle,Findbugs等等代码规则检测工具来检测你的代码,帮助你发现代码的漏洞,Bug,异味以及相关的安全热点等信息(里面有它的一套编码的规范,以及可自定义质量阈,在后续更新的教程中会提及)。
2.0 环境
java11、 SonarQube工具、汉化包、sonar-scanner扫描器、测试源码。
以上部署环境,链接自取(链接:https://pan.baidu.com/s/1ktCTuJAPC0sGCsp6nxSElg 提取码:ae4j)。
3.0 部署流程
3.1.1 JDK环境
3.1.1.1 双击java11.exe文件,弹出安装界面后,可自定义选择安装地址,选择完毕后,点击下一步(注意,java11中jdk和jre同时安装,没有第二步):

3.1.1.2 给出如下提示后,安装完成:

3.1.1.3 点击“关闭”后,配置java环境变量,右键“我的电脑”,点击“属性”,进入系统的设置页面后,点击“高级系统设置”,点击“环境变量”,进行系统环境变量的编辑:

3.1.1.4 新建环境变量,1.变量名:JAVA_HOME,变量值:jdk安装地址;2.编辑变量path,新增值:%JAVA_HOMEbin 或 jdk安装地址bin:
3.1.1.5 环境变量配置完成后,进入cmd命令,输入java –version,出现下图信息,即java11环境配置完成:

3.1.2 SonarQube部署(汉化)
3.1.2.1 解压SonarQube压缩包,进入bin目录,点击windows-x86-64,双击StartSonar.bat,启动服务:

3.1.2.2 启动完成后,在浏览器输入http://localhost:9000,会进入如下页面,默认账号密码为admin:

3.1.2.3 将汉化包置于下方文件夹中,重新启动SonarQube服务,汉化完成:


3.1.3 sonar-scanner配置
3.1.3.1 解压sonar-scanner压缩包,解压完成后,进行环境变量配置,新建环境变量,1.变量名:SONAR_RUNNER_HOME,变量值:sonar-scanner解压路径;2.编辑变量path,新增值:%SONAR_RUNNER_HOME bin或sonar-scanner解压路径bin(某些PC需要设置为sonar-scanner解压路径bin,否则在执行cmd命令(非管理员运行)时,会提示不是内部或外部命令,也不是可运行的程序或批处理文件。):
3.1.3.2 环境变量配置完成后,cmd命令,输入sonar-scanner,回车,出现下方信息后,环境变量配置完成:

3.1.3.3 接下来进行sonar-scanner配置,打开解压目录,进入sonar-scannerconf文件夹,修改sonar-scanner.properties配置文件:

3.1.3.4 在扫描代码目标的根目录,添加sonar-project.properties配置文件,配置文件补充内容如下(配置详细解释可查看:https://docs.sonarqube.org/latest/analysis/scan/sonarscanner-for-gradle/):

SonarQube7.9以上版本已不再支持mysql,所以不用再进行mysql配置,社区版使用其内嵌数据库即可。
以上介绍的是sonar-scanner代码扫描的其中一种方法,也是最简单,最容易操作的一种(五一那段时间,试了其他几种办法,由于本人编程能力并不强,弄了maven、idea等,踩了很多的坑哈哈,后面发现只要方向对了,其实很简单)。
3.1.4 代码扫描
3.1.4.1 最后就是执行项目代码扫描了,进入目标代码根目录,选择对应的路径,cmd进入定位到当前目录,具体执行步骤如下:


3.1.4.2 输入命令如下:sonar-scanner,进行当前代码扫描操作(注意:扫描前,需要开启SonarQube服务):

3.1.4.3 扫描完成后,自动提交至SonarQube中对应的项目中进行后台分析,分析后,即可查看对应的报告信息(后台具体如何使用后续会分享):


4.0 文末自我总结
学会整理、善于总结,积少成多,是一个很好的习惯,加油!