到现在为止,已经将sonarQube服务器搭建好,服务器是Linux服务器,基于sonarQube6.1配置的

原理关于sonarQube的工作原理,暂时还不是太清楚,据同事的分析,是在本机调用服务器对本地的原代码进行扫描,扫描完成之后,将结果保存至服务器,开发同事再登陆至服务器,查看报告并处理问题等

使用MSBuild扫描

针对是源码已经存在本地的同事

参考官方文档:http://docs.sonarqube.org/display/SCAN/From+the+Command+Line

下载:http://docs.sonarqube.org/display/SCAN/Analyzing+with+SonarQube+Scanner+for+MSBuild

(1)下载并解压SonarQube Scanner for MSBuild

https://github.com/SonarSource-VisualStudio/sonar-scanner-msbuild/releases/download/2.2/sonar-scanner-msbuild-2.2.0.24.zip 下载至本地,并解压至一个路径,例如"D:\ms\"中

(2)修改SonarQube.Analysis.xml文件

要修改的地方只是关于sonarQube服务器的一些配置,关于服务器URL、USER、PASSWORD等

注意,这里的参数User/PassWord是登陆sonarQube平台的用户名和密码,请不要与sonarQube的DB登陆用户名和密码搞混淆。

<?xml version="1.0" encoding="utf-8" ?>
<!--
This file defines properties which would be understood by the SonarQube Scanner for MSBuild, if not overridden (see below)
By default the MSBuild.SonarQube.Scanner.exe picks-up a file named SonarQube.Analysis.xml in the folder it
is located (if it exists). It is possible to use another properties file by using the /s:filePath.xml flag The overriding strategy of property values is the following:
- A project-specific property defined in the MSBuild *.*proj file (corresponding to a SonarQube module) can override:
- A property defined in the command line (/d:propertyName=value) has which can override:
- A property defined in the SonarQube.Analysis.xml configuration file [this file] which can override:
- A property defined in the SonarQube User Interface at project level which can override:
- A property defined in the SonarQube User Interface at global level which can't override anything. Note that the following properties cannot be set through an MSBuild project file or an SonarQube.Analysis.xml file:
sonar.projectName, sonar.projectKey, sonar.projectVersion
The following flags need to be used to set their value: /n:[SonarQube Project Name] /k:[SonarQube Project Key] /v:[SonarQube Project Version] -->
<SonarQubeAnalysisProperties xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.sonarsource.com/msbuild/integration/2015/1"> <Property Name="sonar.host.url">sonarQubeServerURL</Property> <Property Name="sonar.login">admin</Property>
<Property Name="sonar.password">password</Property>
<!-- Required only for versions of SonarQube prior to 5.2 -->
<!--
<Property Name="sonar.jdbc.url">jdbc:jtds:sqlserver://mySqlServer/sonar;instance=SQLEXPRESS;SelectMethod=Cursor</Property>
<Property Name="sonar.jdbc.username">sonar</Property>
<Property Name="sonar.jdbc.password">sonar</Property>
--> </SonarQubeAnalysisProperties>

(3)打开源代码文件夹,例如”F:\test\ArasCheckItem\ArasCheckItem“,在当前的路径打开cmd(按住Shift键并鼠标右键),或者打开cmd窗口,并通过命令进入至该源码目录

(3.1)运行命令MSBuild.SonarQube.Runner.exe,本文示例运行命令时加入路径是因为我没有将MSBuild的路径加入至环境变量,如加入了环境变量,可以直接运行MSBuild.SonarQube.Runner.exe,请注意,参数请使用双引号

参数说明:

/key(简写k):对应projectKey即项目的唯一代码,如两套源代码使用同一个projectKey那扫描的结果将混在一起,所以一个项目需要有一个单独的projectKey

/name(简写n):对应projectName即项目的名称,为项目的一个显示的名称,建立使用完整的项目名称

/version(简写v):对应projectVersion即项目的版本,项目在不同的时期版本也是不一样的,如果方便,可以在sonarQube的服务器中查看到不同的版本代码其中问题的变化

以下为完整参数与简写参数命令

"d:\ms\MSBuild.SonarQube.Runner.exe" begin /k:"testproject" /n:"mytestproject" /v:"1.9"
"d:\ms\MSBuild.SonarQube.Runner.exe" begin /key:"testproject" /name:"mytestproject" /version:"1.9"

(3.2)运行命令MSBuild.exe,这个MSBuild是系统安装过VS后会存在的一个编译器,以Visual Studio 2013为例,地址是:C:\Program Files (x86)\MSBuild\12.0\Bin

"C:\Program Files (x86)\MSBuild\12.0\Bin\MSBuild.exe" /t:Rebuild (这里的参数/t如果不指定也是可以扫描出来的,看下图)

(3.3)运行命令MSBuild.SonarQube.Runner.exe,告诉sonarQube运行完成了,将报告上传

"d:\ms\MSBuild.SonarQube.Runner.exe" end

sonarQube Scanner的更多相关文章

  1. sonarqube+Scanner代码质量管理工具

    本文相关描述基于sonarqube 6.2版本. 下载地址: sonarqube下载网址:https://www.sonarqube.org/downloads/ Scanner下载网址(用于扫描项目 ...

  2. SonarQube Scanner的配置与使用简介

    一.下载 下载地址: https://sonarsource.bintray.com/Distribution/sonar-scanner-cli/sonar-scanner-cli-3.0.3.77 ...

  3. Jenkins 集成 SonarQube Scanner

    1.   安装Jenkins 下载安装包,这里我们下载war包 https://jenkins.io/download/ 运行jenkins.war的方式有两种: 第一种:将其放到tomcat中运行( ...

  4. 持续代码质量管理-SonarQube Scanner部署

    1. SonarQube Scanner地址 上一篇文章我们安装了SonarQube-7.3,让我们可以在页面查看代码质量.但是具体的扫描工作则需要SonarQube Scanner完成. 下载页面 ...

  5. Analyzing .net core application with SonarQube Scanner for MSBuild

    SonarQube是管理代码质量一个开放平台,省略安装过程,下面介绍下如何使用sonarqube去扫描c# 代码. 前提:下载SonarQube Scanner for MSBuild.https:/ ...

  6. CentOS6.8配置SonarQube Scanner配合SonarQube使用

    下载最新的SonarQube Scanner压缩包  https://docs.sonarqube.org/display/SCAN/Analyzing+with+SonarQube+Scanner ...

  7. SonarQube Scanner for MSBuild

    到现在为止,已经将sonarQube服务器搭建好,服务器是Linux服务器,基于sonarQube6.1配置的 原理关于sonarQube的工作原理,暂时还不是太清楚,据同事的分析,是在本机调用服务器 ...

  8. 使用SonarQube和SonarQube Scanner分析项目

    一.概述 SonarQube的安装,请参考链接:https://www.cnblogs.com/xiao987334176/p/12011623.html 配置好sonar的服务端后,接下来就要使用s ...

  9. SonarQube Scanner execution execution Error --- Failed to upload report - 500: An error has occurred. Please contact your administrator

    问题原因:mysql参数设置问题 检查mysql参数: mysql> SHOW VARIABLES LIKE 'max_allowed_packet'; 修改/etc/my.cnf文件: [my ...

随机推荐

  1. SQL数据库的备份和恢复

    SQL数据库的备份和恢复 一.SQL数据库的备份: 1.依次打开 开始菜单 → 程序 → Microsoft SQL Server 2008 → SQL Server Management Studi ...

  2. js实现文件上传,删除效果

    效果图: 刚开始: 点击按钮"选择更多后",可以添加很多选择文件: 点击按钮"删除"后: 实现代码: <!DOCTYPE html><html ...

  3. WPF 带CheckBox、图标的TreeView

    WPF 带CheckBox.图标的TreeView 在WPF实际项目开发的时候,经常会用到带CheckBox的TreeView,虽然微软在WPF的TreeView中没有提供该功能,但是微软在WPF中提 ...

  4. C++ 虚函数与纯虚函数

    #include<iostream> #include<string> using namespace std; class A{ public: virtual void f ...

  5. GDB源代码查找路径

    在gdb程序的时候,有时候会发现源代码文件找不到,对于那些带调试信息的系统库或者第三方库,很多时候当你真正想gdb去追他源代码的时候你会发现gdb根本找不到这些源代码路径.这个时候有两种选择: [1] ...

  6. 安装sql server 2008,提示要删除SQL Server 2005 Express 工具 怎么解决?

    x86 修改注册表:HKLM\Software\Microsoft\Microsoft SQL Server\90\Tools\ShellSEM,把 ShellSEM重命名即可. x64       ...

  7. sql数据库优化技巧汇总

    (转)SQL 优化原则 一.问题的提出 在应用系统开发初期,由于开发数据库数据比较少,对于查询SQL语句,复杂视图的的编写等体会不出SQL语句各种写法的性能优劣,但是如果将应用系统提交实际应用后,随着 ...

  8. 编译u-boot命令和u-boot常用命令

    一.编译u-boot命令 1.配置开发板 #make TQ2440_config 2.编译 #make all 3.交叉编译器是crosstools_3.4.5_softfloat” 使用4.3.3版 ...

  9. matplotlib 绘图

    http://blog.csdn.net/jkhere/article/details/9324823 都打一遍 5 matplotlib-绘制精美的图表 matplotlib 是python最著名的 ...

  10. tyvj P1209 - 拦截导弹 平面图最小割&&模型转化

    P1209 - 拦截导弹 From admin    Normal (OI)总时限:6s    内存限制:128MB    代码长度限制:64KB 背景 Background 实中编程者联盟为了培养技 ...