环境搭建 | Windows 11系统从0开始搭建SonarQube环境分析C sharp项目代码

1 安装&使用流程

  1. JDK 17环境搭建
  2. Sonarqube 10.0安装
  3. PostgreSQL 12数据库安装
  4. 配置MSBuild
  5. 下载安装SonarScanner for MSBuild
  6. 使用SonarQube分析C#代码并上传到服务器

注意:SonarQube环境搭建时对各个软件的版本都有要求,如果你不确定使用何版本,那么可以参考本文的版本来进行安装,防止出现安装好以后版本不兼容的情况 !

2 JDK环境搭建

这里不做过多赘述,本篇使用JDK 17

3 SonarQube 10.0安装

进入SonarQube官网Download Previous SonarQube Versions | Sonar (sonarsource.com),安装10.0版本,将下载好的压缩包解压至本地,这里我解压的路径为D:\Sonar\sonarqube-10.0.0.68432

image.png

配置环境变量

快捷键Win + S, 输入env,打开系统环境变量设置.

image.png|400

在系统变量处新增变量名SONAR_HOME,赋值为SonarQube压缩包解压的路径D:\Sonar\sonarqube-10.0.0.68432

image.png|450

在系统变量path中新增一列,取值为%SONAR_HOME%\bin
image.png|475

4 PostgreSQL 12数据库安装

sonar自带的数据库是存储在内存中,一但重启之前的数据全部清空,并且官方只是建议测试用,长期使用建议配置第三方数据库,支持的第三方数据库有Oracle、 PostgreSQL 和 microsoftsqlserver,8.0之后作者说不再支持mysql

下载地址,我下载的12.6版本
Community DL Page (enterprisedb.com)
然后一直下一步即可安装完成,中间有个设置密码和端口(默认就好)要记住

image.png|475

打开pgadmin4:
image.png
主页如下:
image.png
点击连接,输入密码:
image.png
创建sonar用户
如下图,在General中设置用户名为sonar,Privileges中控制权限。用户名为sonar,密码为123456

image.png
image.png
image.png
点开Databases,右键 ,创建数据库。数据库名称为:sonar
image.png
image.png
image.png
连接数据库
image.png

在sonarQube的安装目录的conf目录下,打开sonar.properties
配置好数据库名称和密码

#加入到sonarqube安装目录的conf目录下sonar.properties文件中

#配置数据库名称和密码

sonar.jdbc.username=sonar

sonar.jdbc.password=123456

#设为开放

sonar.jdbc.url=jdbc:postgresql://localhost/sonar?currentSchema=public

image.png

5 配置MSBuild

如下图所示,在命令行中使用 msbuild -ver 查看MSBuild的版本号,如果无法运行此命令则需要在环境变量中添加MSBuild的Bin目录。

image.png

如下图所示,找到MSBuild的Bin目录,并添加到环境变量中

image.png

6 下载安装 SonarScanner for MSBuild

  1. 从 https://github.com/SonarSource/sonar-scanner-msbuild/releases 地址下载安装sonar-scanner-msbuild程序,解压后在环境变量中配置此程序的路径。

image.png
2. 打开sonar-scanner-msbuild程序目录,如下图所示,配置sonar.host.url,sonar.login,sonar.password信息。

image.png

  1. 在命令行中输入 SonarScanner.MSBuild -h 查看相应的信息,如下图所示

至此准备工作完成,开始生成代码检测信息并上传检测报告到服务器

7 使用SonarQube分析C#代码并上传到服务器

  1. 在终端中进入待分析的项目目录

image.png|475

  1. 如下图所示,运行:
    SonarScanner.MSBuild.exe begin /k:"Dopamine" /n:"Dopamine" /v:"1.0"
    命令,出现成功标记后会在程序目录生成 .sonarqube 文件夹。

image.png

**/key(简写k):**对应projectKey即项目的唯一代码,如两套源代码使用同一个projectKey那扫描的结果将混在一起,所以一个项目需要有一个单独的projectKey
**/name(简写n):**对应projectName即项目的名称,为项目的一个显示的名称,建立使用完整的项目名称
**/version(简写v):**对应projectVersion即项目的版本,项目在不同的时期版本也是不一样的,如果方便,可以在sonarQube的服务器中查看到不同的版本代码其中问题的变化

  1. 通过MSBuild编译项目

输入 MSBuild.exe /t:Rebuild /p:Configuration=Release 编译项目

image.png

命令含义
MSBuild -t:Rebuild默认为Debug模式
MSBuild -t:Rebuild -p:Configuration=Release指定编译模式为Release
MSBuild MyApp.sln -t:Rebuild -p:Configuration=Release指定.sln解决方案和编译模式Release
  1. 上传扫描结果到服务器

运行
SonarScanner.MSBuild.exe end
命令,命令运行完成后如下图所示

image.png

  1. 至此扫描操作完成,扫描结果已上传到服务器可以到服务器进行查看。

image.png

  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Eternal_U

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值