SonarQube 无法分析 Xamarin 项目

Posted

技术标签:

【中文标题】SonarQube 无法分析 Xamarin 项目【英文标题】:SonarQube unable to analyze Xamarin project 【发布时间】:2021-11-24 07:20:10 【问题描述】:

我正在尝试在 Xamarin 上的项目中本地使用 SonarQube 开发人员版。 我面临的问题是在命令 dotnet build 后我收到构建失败消息

C:\Program Files\dotnet\sdk\5.0.401\NuGet.targets(131,5): warning : Unable to find a project to restore! [C:\Users\prabhatk\Documents\XamarinProject\DataCollector\DataCollector.sln]

还有一些错误,我没有发布其他错误的原因是我用于测试 SonarQube 的示例项目显示相同的错误但它能够扫描,我可以在 SonarQube 上看到该项目。

【问题讨论】:

有时,当我在文件系统上的文件夹结构与 Visual Studio 中的可视化表示不同时,或者有时我错过了运行 dotnet build 命令的位置时,我会遇到同样的问题。 您是在运行dotnet build 还是在使用msbuilddotnet 5.x 不构建 Xamarin 项目。 【参考方案1】:

由于 SonarQube 正在扫描我的示例项目,我知道 Xamarin 不是问题,而且我知道 SonarQube 只会扫描共享代码,在分析错误时,我认为它可能与 nuget 包有关。但是我仍然不确定“dotnet build”无法构建项目的真正原因是什么。

我从我的项目中复制了我想要扫描的共享代码并粘贴到新创建的项目中,安装所有项目,

然后按照 SonarQube 提供的所有步骤,我完美地扫描了该项目。

【讨论】:

以上是关于SonarQube 无法分析 Xamarin 项目的主要内容,如果未能解决你的问题,请参考以下文章

OSX 上的 SonarQube Xamarin 分析

由于找不到分析配置文件,SonarQube 分析无法完成

Jenkins - Maven 项目 - SonarQube 分析不稳定 - 错误:无法为 - java.lang.IllegalArgumentException 创建符号表:null

SonarQube 无法在空实例“模块已经是项目的一部分”上执行目标

SonarQube 和 Lcov 报告无法解析文件路径

SonarQube / AngularJS - 如何让 SonarQube 启动并运行以集成 / 分析我的 Angular 项目?