为声纳分析创建有效 Ci 管道的不同方法
Posted
技术标签:
【中文标题】为声纳分析创建有效 Ci 管道的不同方法【英文标题】:Different Ways to create an effective Ci pipeline for sonarqube analysis 【发布时间】:2017-09-17 13:04:30 【问题描述】:谁能帮我配置一个最佳 CI 管道以使用 Sonarqube 分析源代码 (JAVA)?在我看来,我有一个像 SCM-->Jenkins --->maven build-->sonarqube analysis
这样的管道。
这是最佳做法吗?或者我们可以跳过 maven 构建,只做声纳分析SCM-->Jenkins-->sonarqube analysis
。对于主要寻求代码分析的组织来说,是否有其他 CI 管道是最佳实践?
【问题讨论】:
【参考方案1】:既然您在谈论 Maven 构建,那么我知道我们正在处理 Java。在这种情况下,您必须在分析之前构建;大部分分析依赖于字节码的深度和准确性。如果 SonarJava 分析器无法使用字节码,您最终会得到很多误报。
具体来说,无论有无字节码,您都会得到相同的覆盖率、重复数等测量结果。但是如果没有字节码,SonarJava 就失去了能力,例如,查看超类并了解哪些方法缺少 @Override
注释。
更新:需要从 SonarJava 版本 4.12 开始的二进制文件。 (详情请参阅the docs。)
【讨论】:
“大部分分析依赖于字节码的深度和准确性”你能解释一下吗?谢谢@G.Ann 查看我的扩展@pandey以上是关于为声纳分析创建有效 Ci 管道的不同方法的主要内容,如果未能解决你的问题,请参考以下文章
如何从VSTS CI管道为解决方案中的每个项目单独发布工件?