使用SonarQube的一点经验

本文分享了使用SonarQube时的配置与使用经验,包括如何通过`./sonar.shconsole`检查配置、查看日志定位问题、导入license、保存与导入qualityprofile等操作。帮助开发者更高效地利用SonarQube进行代码质量控制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这两天在折腾SonarQube(也就是Sonar,以下简称为“Sonar”),有一点心得体会在这里记录下来(网上能找到的这里就不写了):


(一)使用“./sonar.sh console”命令

如果不确定Sonar是否配置成功,可以先使用这个命令。成功的启动输出如下:


确定能启动成功后,再使用“./sonar.sh start”命令。


(二)查看sonar log

有时,启动sonar不成功而且提示信息也不够时(像下面这样),


可以通过查看sonar的log,来定位问题。Log文件位置配置在conf目录下单wrapper.conf。

比方说从下面的log就可以定位到问题是缺少java插件:



(三) 导入plugin的license

有些plugin是收费的,需要license。导入license的方法如下:

a)以administrator身份登录;

b)进入Settings->General Settings->Licenses,粘贴license即可。

参考这个链接


(四) 保存和导入quality profile

有的时候,我们想保存修改过的quality profile,然后在其它的SonarQube上使用。

保存profile:Quality Profiles->backup;

导入profile:Quality Profiles->Restore Profile。

参考这个链接

### 使用SonarQube进行代码质量管理 #### 配置SonarQube环境 为了有效利用SonarQube管理代码质量,需先配置好运行环境。这涉及安装和设置四个主要组件:SonarQube服务器、数据库、插件以及扫描器[^1]。 #### 创建项目并初始化分析 创建新项目时,在SonarQube界面上注册该项目,并获取用于启动首次静态分析所需的令牌(token)和其他必要参数。通过命令行工具如`sonarscanner`执行初步扫描操作前,确保已正确设置了这些属性。 ```bash # 设置环境变量以便于后续调用 export SONAR_TOKEN=your-generated-token-here export SONAR_PROJECT_KEY=my_project_key ``` #### 将SonarQube集成到CI/CD管道中 为了让SonarQube成为持续交付流水线的一部分,可以将其与其他流行的CI平台(比如Jenkins)相结合。每当有新的更改推送到版本控制系统时触发构建过程中的质量检查环节。这样可以在早期发现潜在问题从而提高整体效率[^2]。 ```groovy // Jenkinsfile片段展示如何在pipeline里加入SonarQube阶段 stage('Analyze with SonarQube') { steps { script { def scannerHome = tool name: 'SonarScanner', type: hudson.plugins.sonar.SonarRunnerInstallation ToolType; withEnv(["PATH+SONAR=${scannerHome}/bin"]) { sh ''' sonar-scanner \ -Dsonar.projectKey=$SONAR_PROJECT_KEY \ -Dsonar.sources=. \ -Dsonar.host.url=http://localhost:9000 \ -Dsonar.login=$SONAR_TOKEN ''' } } } } ``` #### 定期审查报告与修复建议 完成上述步骤之后,定期查看由SonarQube生成的质量评估报告至关重要。该报告显示了各种指标得分情况,包括但不限于重复率、复杂度、漏洞数量等;同时提供了具体的改进建议帮助开发者优化源码结构及性能表现。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值