首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么我们必须在Azure DevOps中执行SonarQube代码分析之前先构建项目?

为什么我们必须在Azure DevOps中执行SonarQube代码分析之前先构建项目?
EN

Stack Overflow用户
提问于 2021-06-15 06:15:58
回答 2查看 119关注 0票数 0

我只是好奇,为什么我们必须在执行Azure DevOps中的MSBuild代码分析之前,首先构建( SonarQube )项目?如果我们不先构建项目,它会抛出一个错误,比如

代码语言:javascript
复制
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的强制要求吗?有没有办法绕过这个,我的意思是,我只是想运行代码分析。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-06-17 17:18:42

除了David M. Karr提出的要点之外,在C#和VB.NET的特定情况下,声纳分析规则被实现为Roslyn分析器,这意味着它们作为构建的一部分由编译器执行。没有构建,就没有分析。

SonarCloud有一个名为AutoScan的功能,它为某些语言提供了免费的构建分析,但目前还不支持C#。

票数 0
EN

Stack Overflow用户

发布于 2021-06-16 02:33:27

SonarQube不仅仅对你的源代码进行静态分析。它需要一些构建工件来进行完整的分析。

例如,如果没有运行单元测试所产生的数据文件,SonarQube就不能报告单元测试覆盖率。显然,不编译代码就不能运行单元测试。

除了源代码文件之外,一些语言分析工具还需要编译后的文件。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67977824

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档