带有 MsBuild 的 SonarQube:sonar.cs.analyzer.projectOutPaths 不会为此项目加载任何 protobuf 文件
SonarQube with MsBuild: sonar.cs.analyzer.projectOutPaths no protobuf files will be loaded for this project
我正在 运行将 SonarQube 7.5 与 Sonar Scanner MsBuild 4.5 结合使用,它可以工作,但在 Sonar 上配置的项目上没有可用的结果。让我详细说明我做了什么。
我做了什么
我安装了 SonarQube V7.5 社区并将其作为 Windows 服务启动。我下载了 MsBuild Scanner 4.5 并将此文件夹添加到 Windows 的 PATH
上,以供参考文档。之后,我创建了一个新项目和 运行 虚拟控制台应用程序上的脚本。我在控制台上 运行 的脚本是:
运行 SonarQube 的 BEGIN
步骤
SonarScanner.MSBuild.exe begin
/k:"HappyAppKey"
/d:sonar.host.url="http://localhost:9000"
/d:sonar.login="f3965814e7fdcf4f32e26adc1e69d6f5f851cafc"
运行 MSBUILD 从 sln
文件编译项目
C:\Windows\Microsoft.NET\Framework\v4.0.30319\MsBuild.exe HappyApp.sln /t:Rebuild
运行SonarQube的END
步骤分析提交
SonarScanner.MSBuild.exe end
/d:sonar.login="f3965814e7fdcf4f32e26adc1e69d6f5f851cafc"
它工作没有错误,我可以在 sonarQube 上看到源代码,但没有错误、气味代码、重复等......在 SonarQube 上可以看到,如下图所示
分析end
步骤生成的日志,我可以看到这个警告信息
15:24:48.807 WARN: Property missing: 'sonar.cs.analyzer.projectOutPaths'. No protobuf files will be loaded for this project.
15:24:48.808 WARN: No Roslyn issues report found for this project.
我做错了什么?我应该在项目的文件夹中添加一些东西吗?有什么文件可以配置吗? (这是我第一次使用 SonarQube)。
谢谢。
解决方案:安装正确的 MsBuild
版本(.Net Framework 项目应为 14 或更高版本)。请按照以下步骤操作:
- 下载并安装此 link
上可用的 Build Tools for Visual Studio 2017
- 请注意,您现在拥有文件夹
C:\Program Files (x86)\Microsoft Visual Studio17\BuildTools\MSBuild.0\Bin
。
- 在命令提示符下,导航至文件夹并执行
MsBuild -version
,您应该会看到正确的版本:
Microsoft(R) Build Engine versão 15.9.21+g9802d43bc3 para .NET Framework
Copyright (C) Microsoft Corporation. Todos os direitos reservados.
15.9.21.664
- 如果需要,请在 Windows 的
PATH
上添加文件夹。
- 使用此 Msbuild.exe 构建您的项目。
SonarScanner.MSBuild.exe begin /k:"MyProjectKey" /d:sonar.verbose=true /d:sonar.host.url="http://localhost:9000" /d:sonar.login="3c8d70d998f72178c7a21c1a83590d8af1f6e014"
MSBuild.exe "D:\temp\MyProject\Project.csproj" /t:Rebuild
SonarScanner.MSBuild.exe end /d:sonar.login="3c8d70d998f72178c7a21c1a83590d8af1f6e014"
- 从 http://localhost:9000 访问 SonarQube,您应该会看到分析结果。
我也有同样的问题。但是我使用了正确版本的 MSBuild。
d:\build\workspace\walls_Build_wb11452\WBServices>d:\build\tools\hudson.plugins.sonar.MsBuildSQRunnerInstallation\Scanner_for_MsBuild_4.6.2\SonarScanner.MSBuild.exe begin /k:project_name /n:project_name /v:"2" /d:sonar.language=cs /d:sonar.sourceEncoding=UTF-8 /d:sonar.host.url="url" /d:sonar.login="******"
SonarScanner for MSBuild 4.6.2
d:\build\workspace\walls_Build_wb11452\WBServices>"C:\Program Files (x86)\Microsoft Visual Studio17\Professional\MSBuild.0\Bin\msbuild.exe" Solution.sln /t:Rebuild /m:2 /p:Configuration=Debug /p:DefineConstants="X64PROCESS;AUTO"
Microsoft (R) Build Engine version 15.9.21+g9802d43bc3 for .NET Framework
不知道...
我正在 运行将 SonarQube 7.5 与 Sonar Scanner MsBuild 4.5 结合使用,它可以工作,但在 Sonar 上配置的项目上没有可用的结果。让我详细说明我做了什么。
我做了什么
我安装了 SonarQube V7.5 社区并将其作为 Windows 服务启动。我下载了 MsBuild Scanner 4.5 并将此文件夹添加到 Windows 的 PATH
上,以供参考文档。之后,我创建了一个新项目和 运行 虚拟控制台应用程序上的脚本。我在控制台上 运行 的脚本是:
运行 SonarQube 的 BEGIN
步骤
SonarScanner.MSBuild.exe begin
/k:"HappyAppKey"
/d:sonar.host.url="http://localhost:9000"
/d:sonar.login="f3965814e7fdcf4f32e26adc1e69d6f5f851cafc"
运行 MSBUILD 从 sln
文件编译项目
C:\Windows\Microsoft.NET\Framework\v4.0.30319\MsBuild.exe HappyApp.sln /t:Rebuild
运行SonarQube的END
步骤分析提交
SonarScanner.MSBuild.exe end
/d:sonar.login="f3965814e7fdcf4f32e26adc1e69d6f5f851cafc"
它工作没有错误,我可以在 sonarQube 上看到源代码,但没有错误、气味代码、重复等......在 SonarQube 上可以看到,如下图所示
分析end
步骤生成的日志,我可以看到这个警告信息
15:24:48.807 WARN: Property missing: 'sonar.cs.analyzer.projectOutPaths'. No protobuf files will be loaded for this project.
15:24:48.808 WARN: No Roslyn issues report found for this project.
我做错了什么?我应该在项目的文件夹中添加一些东西吗?有什么文件可以配置吗? (这是我第一次使用 SonarQube)。
谢谢。
解决方案:安装正确的 MsBuild
版本(.Net Framework 项目应为 14 或更高版本)。请按照以下步骤操作:
- 下载并安装此 link 上可用的 Build Tools for Visual Studio 2017
- 请注意,您现在拥有文件夹
C:\Program Files (x86)\Microsoft Visual Studio17\BuildTools\MSBuild.0\Bin
。 - 在命令提示符下,导航至文件夹并执行
MsBuild -version
,您应该会看到正确的版本:
Microsoft(R) Build Engine versão 15.9.21+g9802d43bc3 para .NET Framework
Copyright (C) Microsoft Corporation. Todos os direitos reservados.
15.9.21.664
- 如果需要,请在 Windows 的
PATH
上添加文件夹。 - 使用此 Msbuild.exe 构建您的项目。
SonarScanner.MSBuild.exe begin /k:"MyProjectKey" /d:sonar.verbose=true /d:sonar.host.url="http://localhost:9000" /d:sonar.login="3c8d70d998f72178c7a21c1a83590d8af1f6e014"
MSBuild.exe "D:\temp\MyProject\Project.csproj" /t:Rebuild
SonarScanner.MSBuild.exe end /d:sonar.login="3c8d70d998f72178c7a21c1a83590d8af1f6e014"
- 从 http://localhost:9000 访问 SonarQube,您应该会看到分析结果。
我也有同样的问题。但是我使用了正确版本的 MSBuild。
d:\build\workspace\walls_Build_wb11452\WBServices>d:\build\tools\hudson.plugins.sonar.MsBuildSQRunnerInstallation\Scanner_for_MsBuild_4.6.2\SonarScanner.MSBuild.exe begin /k:project_name /n:project_name /v:"2" /d:sonar.language=cs /d:sonar.sourceEncoding=UTF-8 /d:sonar.host.url="url" /d:sonar.login="******"
SonarScanner for MSBuild 4.6.2
d:\build\workspace\walls_Build_wb11452\WBServices>"C:\Program Files (x86)\Microsoft Visual Studio17\Professional\MSBuild.0\Bin\msbuild.exe" Solution.sln /t:Rebuild /m:2 /p:Configuration=Debug /p:DefineConstants="X64PROCESS;AUTO"
Microsoft (R) Build Engine version 15.9.21+g9802d43bc3 for .NET Framework
不知道...