我们升级到Sonar 5.2。但现在,处理声纳报告的任务失败了:
2015.12.21 16:08:20 ERROR [o.s.s.c.t.CeWorkerRunnableImpl] Failed to execute task AVHFFR9SqYJURQAYr8yb
java.lang.IllegalArgumentException: There's no changeset on line 59
at com.google.common.base.Preconditions.checkArgument(Preconditions.java:125) ~[guava-17.0.jar:na]
at org.sonar.server.computation.scm.ScmInfoImpl.getChangesetForLine(ScmInfoImpl.java:64) ~[sonar-server-5.2.jar:na]
at org.sonar.server.computation.scm.DbScmInfo.getChangesetForLine(DbScmInfo.java:69) ~[sonar-server-5.2.jar:na]
at org.sonar.server.computation.step.NewCoverageMeasuresStep$NewCoverageCounter.initialize(NewCoverageMeasuresStep.java:391) ~[so
如果我卸载版本为1.6.3的Cobertura插件,则报告过程正常。但这对我来说没有解决方案,因为我需要这些报告。是否有人以另一种方式成功解决了这个错误?
问候
答案 0 :(得分:1)
两个想法:
1)您的问题似乎与this discussion on SonarQube's group有关。检查line number="0"
中是否有cobertura.xml file
个qualinsight-mojo-cobertura-core
。不幸的是,这个修复计划用于SonarQube 5.4(即04 / Mar / 16。)
2)根据您与Cobertura报告生成相关的确切需求,如果您正在使用Maven,则可以尝试使用QualInsight Maven Cobertura plugin生成Cobertura报告。此插件提供cobertura-maven-plugin
mojo,如果您的构建基于Maven,则可能使用cobertura.xml
mojo的替代方法。 QualInsight Maven Cobertura插件为UT,IT和综合测试覆盖率生成单独的报告。它会生成标准qualinsight-mojo-cobertura-core
报告,但也可以将其转换为SonarQube Generic Test Coverage plugin格式。
varying lowp vec2 offsetedTexCoord
生成的报告可能不会包含导致问题的数据+可能使用SonarQube的Generic Coverage插件而不是SonarQube的Cobertura插件不会导致您的例外情况get(它在9天前发布并测试到SQ 5.2,而Cobertura插件最后于2014年9月发布)
如果想尝试一下并需要帮助/对此解决方案有疑问,请问(我是开发人员QualInsight Maven Cobertura插件。)
此致