我想明白,如果最好使用sonar-scanner
,或者你的构建工具的插件吗?例如,Maven和Gradle都有Sonar的插件。根据我的理解,sonar-scanner
是通过构建工具使用它的替代方法。这有什么用?哪种方法更好? sonar-scanner
只发布到Sonarqube,还是负责收集/合并指标和报告等其他事情?有没有文章澄清这些差异?
当您使用没有特定声纳扫描仪插件的构建工具时,建议使用声纳扫描仪。如果您正在使用maven您应该使用maven声纳扫描仪。此外,一些CI服务器具有声纳插件,可用于集中SonarQube服务器连接配置。 (但是必须以这种方式使用Sonar扫描仪,在这种情况下你也应该使用你的构建工具插件。)
Sonarscanner负责分析代码并将分析结果发送到SonarQube服务器。 SonarQube将对这些结果进行最终处理。 (保持分析和指标的历史记录是服务器的责任。)
您可以在以下链接中找到详细信息。
https://docs.sonarqube.org/display/SCAN
https://docs.sonarqube.org/latest/analysis/background-tasks/