前言
通过Jenkins调用SonarQube进行代码检测
安装插件
Manage Jenkins
->Plugins
->Available plugins
->搜索并安装SonarQube Scanner
插件

配置SonarQube服务器地址
Manage Jenkins
->System
->配置SonarQube servers
->保存

配置SonarQube身份认证
Manage Jenkins
->System
->SonarQube servers
->添加
->Jenkins

类型
改为Secret text
->将Secret
中输入从SonarQube获取的Token->添加


下载SonarScannerCli客户端并放到Jenkins工作目录
1 2 3 4 5
| cd /var/jenkins_home/ wget https://binaries.sonarsource.com/Distribution/sonar-scanner-cli/sonar-scanner-cli-4.6.0.2311-linux.zip unzip sonar-scanner-cli-4.6.0.2311-linux.zip rm sonar-scanner-cli-4.6.0.2311-linux.zip mv sonar-scanner-4.6.0.2311-linux sonar-scanner-cli
|
在Jenkins中配置SonarScannerCli客户端的环境变量
Manage Jenkins
->Global Tool Configuration
->配置客户端的根目录路径->完成

在任务中添加SonarQube的配置


完成
踩坑
- 报错:
java.lang.IllegalStateException: Failed to create lock in /var/jenkins_home/workspace/demo/.scannerwork/.sonar_lock
原因
- 之前通过其他方式将代码提交到SonarQube检测过
解决问题
参考文献
哔哩哔哩——云原生技术架构