本次选用版本为:
1、SonarQube10.6(下载地址
2、sonar-scanner-8.0.1(下载地址
3、SonarQube for IDE按照idea版本进行安装(插件地址

官网:https://www.sonarsource.com/products/sonarqube/downloads/

1、SonarQube10.6安装

下载jdk17

由于SonarQube10.6要求jdk17+,所以需要先下载jdk17,如开发无需使用jdk17而仅仅是SonarQube使用则可以不配置环境变量,仅作为SonarQube10.6使用。
jdk17(下载地址

SonarQube下载完成后解压到指定文件夹如D盘。
进入安装目录中/conf/sonar.properties对jdk进行配置,新增以下内容

# 配置web服务
sonar.web.java=D:/jdk-17.0.10/bin/java.exe
# 配置计算引擎
sonar.ce.java=D:/jdk-17.0.10/bin/java.exe
# 配置搜索服务
sonar.search.java=D:/jdk-17.0.10/bin/java.exe

配置/bin/windows-x86-64/StartSonar.bat

@rem 将find_java.bat配置jdk改为直接指定,find_java.bat会按照优先级先查找环境变量的jdk,如果都为jdk17则不用配置
@rem set JAVA_EXE=
@rem call "%REALPATH%lib\find_java.bat" set_java_exe FAIL || goto:eof
set "JAVA_EXE=D:\jdk-17.0.10\bin\java.exe"

如需配置启动端口等信息请自行配置,这里使用默认的9000端口

进入安装目录\bin\windows-x86-64,双击StartSonar.bat启动SonarQube
常见启动失败为jdk配置错误
启动成功如下所示:
在这里插入图片描述

打开浏览器访问 http://localhost:9000/
登录账密 admin/admin,首次登录会提示修改密码
在这里插入图片描述
为方便使用,安装中文插件

在这里插入图片描述
安装完成之后重启即可。

控制台中的代码规则、质量配置、质量门禁请自行探索配置

2、IDEA配置SonarQube for IDE

按照IDEA下载对应版本的插件并配置
在这里插入图片描述
配置连接SonarQube服务
在这里插入图片描述
在这里插入图片描述
配置接口名称和地址,地址使用本地http://localhost:9000/即可

现在随便打开一个文件可以实时查看文件中的风险信息
在这里插入图片描述
标黄的地方可以看到匹配到的SonarQube规则
在这里插入图片描述

3、扫描maven项目

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
此时已经建好了一个项目,我们可以分析本地项目
如需实时分析提交的代码可以使用gitlab等配置,可配置不符合规则的代码无法提交git

在这里插入图片描述
创建令牌
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在项目pom根目录中执行该命令即可完成扫描并将扫描结果上传到SonarQube服务器
注意SonarQube是使用jdk17,如果项目是使用jdk8会导致报错,无法正常编译

下面介绍一下更便捷的方法扫描本地代码,无需jdk maven,只检查代码的规范性和安全性

3、Sonar-scanner扫描项目

按照上面提供的链接下载并解压到指定文件夹
进入要扫描的项目目录,新增一个sonar-project.properties文件

# 项目基础配置
sonar.projectKey=pt-hais-sti-inventory
sonar.projectName=pt-hais-sti-inventory
sonar.projectVersion=1.0
# 只扫描 src 目录,排除配置文件,多个用逗号隔开
sonar.sources=pt-hais-sti-inventory-server/src
sonar.exclusions=**/*.xml,**/*.yml,**/*.yaml,**/*.properties,**/pom.xml,**/target/**,**/.idea/**
# 编码
sonar.sourceEncoding=UTF-8
# 2. 配置编译后的class路径(IDEA Rebuild后自动生成,直接写)
sonar.java.binaries=pt-hais-sti-inventory-server/target/classes
# 服务器地址 + 认证 Token(核心修改!)
sonar.host.url=http://localhost:9000
sonar.token=SonarQube中的token

SonarQube生成一个token
在这里插入图片描述
进行以上操作之后我们的项目根目录就有了一个sonar-project.properties文件

进入项目根目录,打开cmd命令行执行以下命令:

D:\sonar-scanner-8.0.1.6346-windows-x64\bin\sonar-scanner.bat

在这里插入图片描述
等待扫描完成即可在SonarQube控制台中查看该项目的扫描情况。

在这里插入图片描述
点进项目即可看到具体的报错信息
在这里插入图片描述
查看具体提示行和问题原因和方法,可以直接点击IDEA打开定位到具体代码行
在这里插入图片描述
以上介绍了SonarQube、Sonar-scanner的简单使用,小伙伴们可以自行探索更多玩法。

后续有更多对SonarQube的配置操作等再继续更新内容。

Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐