【问题标题】:Failed to execute goal org.sonarsource.scanner.maven:sonar-maven-plugin:3.2:sonar (default-cli) Incompatible execution data for class无法执行目标 org.sonarsource.scanner.maven:sonar-maven-plugin:3.2:sonar (default-cli) 类的执行数据不兼容
【发布时间】:2017-06-25 20:02:46
【问题描述】:

这是在 jenkins 覆盖作业中配置的声纳附加属性:

-Dsonar.jacoco.reportPath=${WORKSPACE}/merged_unit.exec
-Dsonar.java.coveragePlugin=jacoco
-Dsonar.dynamicAnalysis=reuseReports
-Dsonar.jacoco.itReportPath=${WORKSPACE}/merged_it.exec

我在 jenkins 上收到以下错误:

Jenkins 日志:[错误] 未能执行目标 org.sonarsource.scanner.maven:sonar-maven-plugin:3.2:sonar 项目 aaaa-parent 上的 (default-cli):不兼容的执行数据 类 xxxxxxxxxxxxx,ID 为 4050af3ab5fc5456。 -> [帮助 1] org.apache.maven.lifecycle.LifecycleExecutionException: 失败 执行目标 org.sonarsource.scanner.maven:sonar-maven-plugin:3.2:sonar 项目 xxxxx 上的(默认 cli):类的执行数据不兼容 xxxxxxxxxxxxxxxxxx,ID 为 4050af3ab5fc5456。在 org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:216) 在 org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153) 在 org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145) 在 org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:116) 在 org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:80) 在 org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:51) 在 org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128) 在 org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:307) 在 org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:193) 在 org.apache.maven.DefaultMaven.execute(DefaultMaven.java:106) 在 org.apache.maven.cli.MavenCli.execute(MavenCli.java:862) 在 org.apache.maven.cli.MavenCli.doMain(MavenCli.java:286) 在 org.apache.maven.cli.MavenCli.main(MavenCli.java:197) 在 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 在 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 在 java.lang.reflect.Method.invoke(Method.java:483) 在 org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289) 在 org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229) 在 org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415) 在 org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)

奇怪的是,如果我将reportPath和itReportPath设置为相同,无论merged_unit.exec还是merged_it.exec,声纳分析都很好 但是如果我设置它应该是什么,就会出现错误。

这个项目是一个多模块的项目,所以我使用下面的xml来合并(我只把一个模块放在第一位进行测试)

<target name="merge_unit_exec">
                <jacoco:merge destfile="/home/qatest/test-script/aaa/unittest/report/merged_unit.exec">
                        <fileset dir="/home/qatest/jenkins/workspace/aaaa/aaa/target" includes="*.exec" />
                </jacoco:merge>
</target>

它阻止了我 2 天,非常感谢您的大力帮助。谢谢

【问题讨论】:

    标签: sonarqube jacoco


    【解决方案1】:

    Incompatible execution data for class 表示执行数据包含两次完全相同的类,但探针数量不同。

    因此,请检查您是否在所有地方都使用完全相同的最新 JaCoCo 版本。检查您没有将数据附加到的陈旧 exec 文件,而它们是使用另一个版本的 JaCoCo 创建的。检查您是否没有非正常终止 JVM,这可能导致不完整的损坏的 exec 文件。

    “IllegalStateException: Incompatible execution data for class in…” exception from Jacoco when run for an existing earhttps://github.com/jacoco/jacoco/issues/95 中检查有关相同异常的类似问题

    【讨论】:

    • 感谢您的建议,我尝试统一了jacoco版本,但不起作用。最后我只通过更改配置顺序解决了这个错误,如下面的``Dsonar.jacoco.reportPath=${WORKSPACE}/merged_unit.exec Dsonar.jacoco.itReportPath=${WORKSPACE}/merged_it.exec -Dsonar.java。 coveragePlugin=jacoco -Dsonar.dynamicAnalysis=reuseReports``
    【解决方案2】:
    -Dsonar.jacoco.reportPath=${WORKSPACE}/merged_unit.exec
    -Dsonar.jacoco.itReportPath=${WORKSPACE}/merged_it.exec
    -Dsonar.java.coveragePlugin=jacoco
    -Dsonar.dynamicAnalysis=reuseReports
    

    我找到了上面的解决方案,但是谁能给出一个合理的答案

    【讨论】:

      猜你喜欢
      • 2021-06-02
      • 2016-07-26
      • 1970-01-01
      • 2017-03-11
      • 2017-03-23
      • 2023-02-08
      • 2021-03-11
      • 2021-10-27
      • 2017-08-28
      相关资源
      最近更新 更多