我只是好奇,为什么我们必须在执行Azure DevOps中的MSBuild代码分析之前,首先构建( SonarQube )项目?如果我们不先构建项目,它会抛出一个错误,比如
Post-processing started.
##[error]11:17:23.752 The SonarScanner for MSBuild integration failed: SonarQube was unable to collect the required information about your projects.
Possible causes:
1. The project has not been built - the project must be built in between the begin and end ste这是集成SQ的强制要求吗?有没有办法绕过这个,我的意思是,我只是想运行代码分析。
发布于 2021-06-17 17:18:42
除了David M. Karr提出的要点之外,在C#和VB.NET的特定情况下,声纳分析规则被实现为Roslyn分析器,这意味着它们作为构建的一部分由编译器执行。没有构建,就没有分析。
SonarCloud有一个名为AutoScan的功能,它为某些语言提供了免费的构建分析,但目前还不支持C#。
发布于 2021-06-16 02:33:27
SonarQube不仅仅对你的源代码进行静态分析。它需要一些构建工件来进行完整的分析。
例如,如果没有运行单元测试所产生的数据文件,SonarQube就不能报告单元测试覆盖率。显然,不编译代码就不能运行单元测试。
除了源代码文件之外,一些语言分析工具还需要编译后的文件。
https://stackoverflow.com/questions/67977824
复制相似问题