SonarQube 7.9.1 无法扫描通过 Jenkins 运行的 .net 项目的 .cs 和 sql 文件

Posted

技术标签:

【中文标题】SonarQube 7.9.1 无法扫描通过 Jenkins 运行的 .net 项目的 .cs 和 sql 文件【英文标题】:SonarQube 7.9.1 not able to scan .cs and sql files for .net project running through Jenkins 【发布时间】:2021-11-13 23:49:14 【问题描述】:

我有 SonarQube 版本 7.9.1,我正在通过 Jenkins 运行声纳扫描。它扫描所有文件,但无法扫描我的 MS 项目的 .cs 和 sql 文件。我该如何解决这个问题?

sonar-project.properties:

sonar.projectKey=MSProject
sonar.projectName=MSProject
sonar.projectVersion=1.0

# Enable the Visual Studio bootstrapper
sonar.visualstudio.enable=true

# Language
sonar.language=cs

# Comma-separated paths to directories with sources (required)
sonar.sources= .

# Encoding of sources files
sonar.sourceEncoding=UTF-8

此外,我可以在运行 sonarscanner 的 Jenkins 日志中看到一些警告。不确定是否相关。

WARN: Property missing: 'sonar.cs.analyzer.projectOutPaths'. No protobuf files will be loaded for this project.
WARN: No Roslyn issues report found for this project.

我使用的是声纳扫描仪 2.6.1 版

这就是我在管道脚本中运行 sonnarscanner 的方式

/home/sonar/sonar-scanner-2.2.1/bin/sonar-scanner

【问题讨论】:

【参考方案1】:

您需要使用SonarScanner for .NET 来分析C# 项目。

【讨论】:

嗨@duncanp,我已经在jenkins 中为MSBuild 添加了SonnarScanner,请您帮忙看看如何通过管道脚本运行它 恐怕我对詹金斯一无所知。但是,还有一个用于 Jenkins 的 SonarScanner,它应该可以简化调用扫描仪的过程。有关更多信息,请参阅文档:docs.sonarqube.org/latest/analysis/scan/… 感谢您的帮助。我已经阅读了文档,这让我感到有些困惑,是需要安装 dotnet 核心还是仅适用于 MSBuild 的 SonarScanner 才能完成这项工作

以上是关于SonarQube 7.9.1 无法扫描通过 Jenkins 运行的 .net 项目的 .cs 和 sql 文件的主要内容,如果未能解决你的问题,请参考以下文章

Sonarqube 无法加载组件

Sonarqube 无法创建用户缓存

Sonarqube 与声纳扫描仪

詹金斯 - sonarQube 问题 ||声纳扫描仪插件

静态代码扫描工具 - sonarQube介绍

静态代码扫描工具 - sonarQube介绍