avatar

目录
SonarQube系列二之代码分析

SonarQube系列(一)之代码分析

1.sonarqube账号token的生成

sonarqube支持生成用户token,以便在命令行或者脚本中使用token代表账号操作sonarbue,避免造成账号密码的泄露。

点击sonarqube首页右上角头像,进入我的账号

然后进入安全tab页,随便输入个标识,点击生成,生成一个账号专属的token

生成的token只会显示一次,且后续无法查询,因此先把他手动备份下来,后续会用到。

2.安装netcore分析器

dotnet tool install --global dotnet-sonarscanner --version 4.8.0

《SonarScanner for MSBuild》

安装完后,我们把我们的sonar的token注入到该命令的配置中,以便在执行命令时自动关联到对应账户的sonar。

在dotnet tool的安装目录下,找到一个叫 SonarQube.Analysis.xml的配置文件。

我的xml在该目录下:C:\Users\Administrator\.dotnet\tools\.store\dotnet-sonarscanner\4.8.0\dotnet-sonarscanner\4.8.0\tools\netcoreapp3.0\any

FAQ

Q:怎么查找目录呢?
A:

Code
1
2
3
4
5

windows系统
%USERPROFILE%\.dotnet\tools
linux系统
$HOME/.dotnet/tools

工具目录:工具参考

3.windows配置java环境

《Windows10配置Java11环境》

《java JDK下载》

4.开始分析代码

依次执行三条命令:

(方案一):

SonarScanner.MSBuild.exe begin /k:"centa" /d:sonar.host.url="http://192.168.120.144:9000" /d:sonar.login="3f5afc79d33c4d3e882b8663cc9f137c39e8bac4"

MsBuild.exe /t:Rebuild

SonarScanner.MSBuild.exe end /d:sonar.login="3f5afc79d33c4d3e882b8663cc9f137c39e8bac4"

(方案二):

dotnet sonarscanner begin /k:"centa" /d:sonar.host.url="http://192.168.120.144:9000" /d:sonar.login="3f5afc79d33c4d3e882b8663cc9f137c39e8bac4" 

dotnet build Centa.Platform.sln

dotnet sonarscanner end /d:sonar.login="3f5afc79d33c4d3e882b8663cc9f137c39e8bac4" 

我采用的是第二种方式,打开netcore项目根目录,gitbash执行以上命令,会生成.sonarqube文件夹。等待命令执行完成,直到看到successed字样。如下图:

SonarQube

SonarQube

SonarQube

5.sonar集成jenkins

《基于SonarQube代码质量检查工具总结》

参考资料
QiXiao_柒小(東): 《SonarQube系列一、Linux安装与部署》

文章作者: HJY
文章链接: https://hjy-dev.github.io/2019/12/21/SonarQube%E7%B3%BB%E5%88%97%E4%BA%8C%E4%B9%8B%E4%BB%A3%E7%A0%81%E5%88%86%E6%9E%90/
版权声明: 本博客所有文章除特别声明外,均采用 Apache License 2.0 许可协议。转载请注明来自 Kiven Blog
打赏
  • 微信
    微信
  • 支付寶
    支付寶

评论