【问题标题】:Parallel Sonar Scanner execution locking errors并行声纳扫描仪执行锁定错误
【发布时间】:2018-02-27 11:13:10
【问题描述】:

我们正在 Jenkins 上运行声纳扫描仪(版本 3.0.3.778),并使用 sonar.projectKey 和 sonar.branch 属性为每个分支创建一个新项目。即使每个分支都创建了一个新项目,我们仍然会随机收到错误消息,指出该项目已经在项目中进行了另一项分析。当项目之间应该分开时,它似乎是扫描仪中的一个错误,它会绊倒自己的锁。请注意,我们还运行 5.6.6 版的 Sonar 服务器和 2.6.1 版的 Jenkins SonarQube 插件。有任何想法吗?

03:51:40 ERROR: Error during SonarQube Scanner execution
03:51:40 java.lang.IllegalStateException: Another SonarQube analysis is already in progress for this project
03:51:40    at org.sonar.batch.scan.ProjectLock.failAlreadyInProgress(ProjectLock.java:58)
03:51:40    at org.sonar.batch.scan.ProjectLock.tryLock(ProjectLock.java:50)
03:51:40    at org.sonar.batch.scan.ProjectScanContainer.doBeforeStart(ProjectScanContainer.java:109)
03:51:40    at org.sonar.core.platform.ComponentContainer.startComponents(ComponentContainer.java:140)
03:51:40    at org.sonar.core.platform.ComponentContainer.execute(ComponentContainer.java:127)
03:51:40    at org.sonar.batch.task.ScanTask.execute(ScanTask.java:47)
03:51:40    at org.sonar.batch.task.TaskContainer.doAfterStart(TaskContainer.java:86)
03:51:40    at org.sonar.core.platform.ComponentContainer.startComponents(ComponentContainer.java:142)
03:51:40    at org.sonar.core.platform.ComponentContainer.execute(ComponentContainer.java:127)
03:51:40    at org.sonar.batch.bootstrap.GlobalContainer.executeTask(GlobalContainer.java:106)
03:51:40    at org.sonar.batch.bootstrapper.Batch.executeTask(Batch.java:119)
03:51:40    at org.sonarsource.scanner.api.internal.batch.BatchIsolatedLauncher.execute(BatchIsolatedLauncher.java:63)
03:51:40    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
03:51:40    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
03:51:40    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
03:51:40    at java.lang.reflect.Method.invoke(Method.java:498)
03:51:40    at org.sonarsource.scanner.api.internal.IsolatedLauncherProxy.invoke(IsolatedLauncherProxy.java:60)
03:51:40    at com.sun.proxy.$Proxy0.execute(Unknown Source)
03:51:40    at org.sonarsource.scanner.api.EmbeddedScanner.doExecute(EmbeddedScanner.java:233)
03:51:40    at org.sonarsource.scanner.api.EmbeddedScanner.runAnalysis(EmbeddedScanner.java:151)
03:51:40    at org.sonarsource.scanner.cli.Main.runAnalysis(Main.java:123)
03:51:40    at org.sonarsource.scanner.cli.Main.execute(Main.java:77)
03:51:40    at org.sonarsource.scanner.cli.Main.main(Main.java:61)

【问题讨论】:

  • edit您的问题包括SonarQube的版本。
  • @G.Ann-SonarSourceTeam - 我们使用的版本是 5.6.6

标签: java jenkins sonarqube code-coverage sonarqube-scan


【解决方案1】:

扫描程序在 Jenkins 中的项目工作区创建临时文件。这就是为什么我们不能支持对同一物理文件集的并发分析。您必须配置 Jenkins,以便它为每个分支使用不同的工作区。

【讨论】:

  • 在这种情况下,我们已经为每个分支使用了不同的工作空间。
猜你喜欢
  • 2017-07-08
  • 2020-12-26
  • 2018-02-09
  • 2021-01-08
  • 2018-07-06
  • 2020-08-30
  • 2017-08-19
  • 2017-04-27
  • 2019-11-05
相关资源
最近更新 更多