【问题标题】:How can I use git as the scm provider in sonarqube 5.0 ( using sonar-runner )如何在 sonarqube 5.0 中使用 git 作为 scm 提供程序(使用 sonar-runner)
【发布时间】:2015-04-02 10:23:59
【问题描述】:

我关注 sonarqub 的官方支持 http://docs.sonarqube.org/display/SONAR/SCM+support

我得到了上面的错误。

我是否错过了需要配置的东西,或者配置错误

08:46:33.723 INFO - Sensor SCM Sensor...
08:46:33.897 INFO - SCM provider for this project is: git
08:46:33.898 INFO - Retrieve SCM blame information...
08:46:33.915 INFO - 632 files to be analyzed
08:46:34.377 INFO - Author: PersonIdent[Not Committed Yet, , Tue Feb 3 08:46:34 2015 +0000]
08:46:34.379 INFO - Source commit: null
08:46:34.377 INFO - Author: PersonIdent[Not Committed Yet, , Tue Feb 3 08:46:34 2015 +0000]
08:46:34.924 INFO - Source commit: null
INFO: ------------------------------------------------------------------------
INFO: EXECUTION FAILURE
INFO: ------------------------------------------------------------------------
Total time: 1:01.699s
08:46:35.891 INFO - Author: PersonIdent[Not Committed Yet, , Tue Feb 3 08:46:35 2015 +0000]
08:46:34.930 INFO - Author: PersonIdent[Not Committed Yet, , Tue Feb 3 08:46:34 2015 +0000]
08:46:35.930 INFO - Source commit: null
Final Memory: 27M/318M
INFO: ------------------------------------------------------------------------
ERROR: Error during Sonar runner execution
ERROR: Unable to execute Sonar
ERROR: Caused by: Unable to blame file

非常感谢。

【问题讨论】:

  • 同样的事情,我什至修复了行尾(已知问题),但这并没有帮助。可能是另一个 SCM 插件或 maven 库的副作用。您是否尝试过禁用所有其他 SCM 相关插件?
  • 现在可以将sonar.scm.disabled=true 添加到我的sonar.properties 文件中。在修复之前,也许这会对您有所帮助。
  • @Stephan 谢谢,我试过了,但对我不起作用。
  • @Stephan 将其添加到我的 sonar.properties 文件中不起作用(SonarQube 5.0.1)。但是,在我的 Jenkins Sonar 配置中将其添加为“附加属性”。
  • 我们在哪里可以提供声纳中的爵士存储库 URL?

标签: git sonarqube


【解决方案1】:

这是因为在运行分析时,SonarQube 期望所有文件都应该提交。

确实,SonarQube 假设当您运行标准分析(将数据推送到服务器)时,项目的单个文件不应有任何未提交的更改,因为这可能会推送不相关的信息与存储库中的真实源代码。这就是分析失败的原因。

运行预览分析时显然不是这样:由于这种分析不会将数据推送到服务器,仅在本地报告问题,因此未提交的更改不是问题,因此分析不会失败.

我已更新 the documentation 以更清楚地说明这一点。

【讨论】:

  • 不幸的是,生成的代码也不是这样。我们从 Jnario 代码生成单元测试。
  • SonarQube 看起来非常棒,但是当您不使用 Jenkins 进行 CI 时,很难上手。对于像我这样的初学者来说,更清晰的文档会非常有用。
  • @fabrice-sonarsource-team 我们使用 Gitlab,我试图让 Sonar 将 git 识别为 scm。即使在从github.com/gabrie-allaigre/sonar-gitlab-plugin 获取 Gitlab 插件并放入 SONARQUBE_HOME/extensions/plugins 并重新启动 SonarQube 后,我仍会在 Sonar 5.6.3 中遇到问题。当我将 maven 项目指向具有 条目的 maven pom 的 SonarQube 服务器时,我收到此错误:无法在项目上执行目标 org.sonarsource.scanner.maven:sonar-maven-plugin:3.5.0.1254:sonar:SCM provider 设置为“git”,但未找到此密钥的 SCM 提供程序。未安装 SCM 提供程序
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-11-18
  • 2018-05-29
  • 2017-03-30
  • 2015-11-03
  • 1970-01-01
  • 1970-01-01
  • 2015-09-16
相关资源
最近更新 更多