sonar scanner配置

  • Post author:
  • Post category:其他




sonar scanner配置

这里记录如何配置sonar scanner扫描C/C++项目代码。话不多说,先上

官网链接




1. 环境

对于C/C++项目,如官网所言,我们需要两个工具(如下):


  • SonarSource Build Wrapper

  • Compilation Database

  • Sonar Scanner



1.1 SonarSource Build Wrapper

Build Wrapper最好从

你的Sonarqube服务器下载

,这样可以确保服务器和Build Wrapper插件版本是匹配的。

  • Linux


    {SonarQube Server URL}/static/cpp/build-wrapper-linux-x86.zip
  • macOS


    {SonarQube Server URL}/static/cpp/build-wrapper-macosx-x86.zip
  • Windows


    {SonarQube Server URL}/static/cpp/build-wrapper-win-x86.zip



1.2 sonar-scanner

sonar-scanner的安装,请参考

官网

.

在这里插入图片描述

对于Windows用户而言,sonar-scanner是免安装的,可直接使用。



2. 使用



2.1 Compilation Database

对于

Compilation Database

不需要安装,他是

1.1 Build Wrapper

和编译器的产物,最后调用

Sonar Scanner

的输入。

// example for linux
build-wrapper-linux-x86-64 --out-dir build_wrapper_output_directory make clean all
 // example for macOS
build-wrapper-macosx-x86 --out-dir build_wrapper_output_directory xcodebuild clean build
// example for Windows
build-wrapper-win-x86-64.exe --out-dir  build_wrapper_output_directory MSBuild.exe /t:Rebuild /nodeReuse:False



2.2 执行

sonar-scanner

执行

sonar-scanner

的时候,确保

Compilation Database



sonar-project.properties

在同一文件夹。最后,run

sonar-scanner

  • Linux
sonar-scanner
  • Windows
./sonar-scanner.bat



3. 注意

在执行

sonar-scanner

的时候,有时候会失败,有很多原因。

  • sonarqube服务器没有找到

    在这里插入图片描述

    可以查看,你的

    sonar-scanner

    的配置文件,如下:

    在这里插入图片描述

    其中

    sonar.host.url

    是你服务器的url,

    sonar.login

    则是你用户生成的一个

    Access Token

    (因为它,你才可以访问你的sonarqube服务器)。


  • sonar-scanner

    没有找到

    Compilation Database

  • 编译失败了,导致

    compilation Database

    生成不全



版权声明:本文为weixin_44128977原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。