- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我一直在本地使用 JaCoCo 没有问题。
在远程服务器上运行 Jenkins 作业时,作业构建良好并生成 JaCoCo 覆盖率报告(即它出现在我的 workspace/report
文件夹中)但在尝试发布报告时构建失败在 Jenkins 上。
我正在使用 Jenkins 1.460 和 JaCoCo 5.0.0。
我已经为 Jenkins 配置了:
**/**.exec
**/dist/validation/WEB-INF/classes
**/src
(我也尝试过**/Validation/src
,并明确包含**/**.class
并排除其他文件类型)这是配置问题还是兼容性错误?
[编辑:如果它能帮助其他人,其他论坛说 JaCoCo 需要 ASM 5.+ 来管理 Java 8 类分析。我已经在使用 ASM 5.0.1。]
BUILD SUCCESSFUL
Total time: 4 minutes 57 seconds
Archiving artifacts
Recording test results
[JaCoCo plugin] Collecting JaCoCo coverage data...
[JaCoCo plugin] **/**.exec;**/dist/validation/WEB-INF/classes;**/Validation/src; locations are configured
[JaCoCo plugin] Number of found exec files for pattern **/**.exec: 1
[JaCoCo plugin] Saving matched execfiles: E:\Jenkins\jobs\Validation - Test Cases\workspace\Validation\jacoco.exec
[JaCoCo plugin] Saving matched class directories for class-pattern: **/dist/validation/WEB-INF/classes: E:\Jenkins\jobs\Validation - Test Cases\workspace\Validation\dist\validation\WEB-INF\classes
[JaCoCo plugin] Saving matched source directories for source-pattern: **/Validation/src: E:\Jenkins\jobs\Validation - Test Cases\workspace\Validation\src
[JaCoCo plugin] Loading inclusions files..
[JaCoCo plugin] inclusions: []
[JaCoCo plugin] exclusions: []
ERROR: Publisher hudson.plugins.jacoco.JacocoPublisher aborted due to exception
java.io.IOException: Error while analyzing class E:\Jenkins\jobs\Validation - Test Cases\builds\2015-02-23_15-59-44\jacoco\classes\org\gosh\validation\filters\ModifiedFileListFilter.class.
at org.jacoco.core.analysis.Analyzer.analyzerError(Analyzer.java:150)
at org.jacoco.core.analysis.Analyzer.analyzeClass(Analyzer.java:144)
at org.jacoco.core.analysis.Analyzer.analyzeAll(Analyzer.java:175)
at org.jacoco.core.analysis.Analyzer.analyzeAll(Analyzer.java:208)
at hudson.plugins.jacoco.ExecutionFileLoader.analyzeStructure(ExecutionFileLoader.java:126)
at hudson.plugins.jacoco.ExecutionFileLoader.loadBundleCoverage(ExecutionFileLoader.java:133)
at hudson.plugins.jacoco.JacocoReportDir.parse(JacocoReportDir.java:102)
at hudson.plugins.jacoco.JacocoBuildAction.loadRatios(JacocoBuildAction.java:291)
at hudson.plugins.jacoco.JacocoBuildAction.load(JacocoBuildAction.java:273)
at hudson.plugins.jacoco.JacocoPublisher.perform(JacocoPublisher.java:371)
at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:19)
at hudson.model.AbstractBuild$AbstractRunner.perform(AbstractBuild.java:705)
at hudson.model.AbstractBuild$AbstractRunner.performAllBuildSteps(AbstractBuild.java:680)
at hudson.model.AbstractBuild$AbstractRunner.performAllBuildSteps(AbstractBuild.java:658)
at hudson.model.Build$RunnerImpl.post2(Build.java:162)
at hudson.model.AbstractBuild$AbstractRunner.post(AbstractBuild.java:627)
at hudson.model.Run.run(Run.java:1446)
at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)
at hudson.model.ResourceController.execute(ResourceController.java:88)
at hudson.model.Executor.run(Executor.java:238)
Caused by: java.lang.ArrayIndexOutOfBoundsException: 7
at org.jacoco.core.internal.analysis.MethodAnalyzer.addProbe(MethodAnalyzer.java:288)
at org.jacoco.core.internal.analysis.MethodAnalyzer.visitInsnWithProbe(MethodAnalyzer.java:224)
at org.jacoco.core.internal.flow.MethodProbesAdapter.visitInsn(MethodProbesAdapter.java:76)
at org.objectweb.asm.tree.InsnNode.accept(InsnNode.java:80)
at org.objectweb.asm.tree.InsnList.accept(InsnList.java:162)
at org.objectweb.asm.tree.MethodNode.accept(MethodNode.java:815)
at org.jacoco.core.internal.flow.ClassProbesAdapter$1.visitEnd(ClassProbesAdapter.java:124)
at org.objectweb.asm.ClassReader.b(Unknown Source)
at org.objectweb.asm.ClassReader.accept(Unknown Source)
at org.objectweb.asm.ClassReader.accept(Unknown Source)
at org.jacoco.core.analysis.Analyzer.analyzeClass(Analyzer.java:107)
at org.jacoco.core.analysis.Analyzer.analyzeClass(Analyzer.java:142)
... 18 more
Finished: FAILURE
[更新 - 解决方案]
使用 this answer我在本地驱动器上安装了最近发布的 JaCoCo-0.7.4(参见 eclemma.org/jacoco)。此版本包含 issue 27088 的修复程序.我还必须删除并重新安装 Jenkins JaCoCo 插件(我使用的是 Jenkins 插件管理器)。
最佳答案
构建期间使用的 JaCoCo 版本与 Jenkins 在构建后操作中使用的版本之间似乎存在兼容性问题。
maven-jacoco-plugin 版本 0.7.3.201502191951
与 Jenkins JaCoCo 插件版本 1.0.18
相结合会导致此问题。 maven-jacoco-plugin 的版本 0.7.2.201409121644
似乎是兼容的。
另见 https://issues.jenkins-ci.org/browse/JENKINS-27088和 https://github.com/jenkinsci/jacoco-plugin/pull/51
关于java - JaCoCo 报告在 Jenkins : java. lang.ArrayIndexOutOfBoundsException 中失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28678591/
我在我的一个模块中通过 JaCoCo 生成 AHP 报告时遇到问题。当构建开始时,我看到 JaCoCo 正确设置 argLine 为: [INFO] jacoco.agent.argLine set
我正在尝试将 JaCoCo 添加到我的 Android 以覆盖 Sonar Qube。但是在运行命令 ./gradlew jacocoTestReport 时,我收到以下错误。 Task :app:
我用过 lombok.@UtilityClass到: 生成私有(private)构造函数 使类(class)最终 将实用程序类中的所有字段设为静态 并且 Jacoco 不涵盖 Lombok 生成的代码
我正尝试在我的 project 上创建一个 jacoco 报告.该项目是 java 12 版本,jacoco-maven-plugin 是 0.8.5 版本。
我的项目是使用 Maven 构建的。我使用“Jacoco”插件来执行质量检查。 对于一个项目,我想在线检查测试覆盖率。我只想检查仅 3 个包裹的线路覆盖率。如何指定此检查? 我尝试“包括”一些软件包,
我有一个 Maven 项目(Java)的 jacoco-agent 生成文件,名为 jacoco.exec . 如何将此文件转换为人类可读的格式? (HTML/XML)。 最佳答案 我相信这是在 of
我正在使用 Bamboo、SonarQube 和 Maven 插件在 SonarQube 中生成 Jacoco 报告。它正在生成 jacoco.exec 文件,但如何在 SonarQube 中显示报告
我正在运行 Jacoco 的 Maven 插件。 prepare-agent 目标运行良好,但由于某种原因没有生成 jacoco.exec 文件。随后,报告目标提示由于缺少执行数据文件而跳过 JaCo
我在我的项目中设置了 Jacoco 来执行 a) 检查代码覆盖率和 b) 生成覆盖率报告。生成的 HTML 报告显示了正确的覆盖率值,但 Jacoco 检查在构建过程结束时生成的警告消息显示了不同的错
我用的是官方example Socket server为我的 jacocoagent.jar 启动一个套接字服务器来连接。我这样启动我的目标 jar : java -javaagent:jacocoa
当 Jacoco 代码覆盖率低于一定百分比时,我试图使 Gradle 构建失败。 ...
我有一个 maven 项目,使用“测试”阶段和“集成测试”阶段。在测试阶段,执行 JUnit 测试,在集成测试中有 HTMLUnit 测试。我正在使用 Jacoco[1]-maven-plugin 来
我遇到以下错误: Plugin execution not covered by lifecycle configuration: org.jacoco:jacoco-maven-plugin:0.7
我在 Tomcat 上部署了一个 Web 应用程序。在我进入更多细节之前,让我详细说明这些版本。 版本:jdk 1.7,Tomcat - 7.0.19,jacoco -0.5.6 我已将jdk1.7
我按照以下步骤使用 jacoco 测量代码覆盖率: 我已经使用 jacoco 代理动态检测了我的应用程序 wars 文件。 启动 tomcat 服务器。 运行一些测试用例。 已停止 tomcat 服务
我将我的 Ant 任务配置为
我正在尝试让 jacoco+gradle 一起工作。看看这个论坛,似乎有些人已经成功地做到了。但是当我尝试时,我遇到了一个奇怪的异常。 我做了什么: 1.下载gradle 2.2.1并配置环境变量等。
我正在开发 SAML One Login Toolkit,并从 GitHub 获取了最新的主分支 here并使用 Eclipse Oxygen。它应该手动解决所有 Maven 依赖项,但不幸的是事实并
SonarQube 7.7 针对 Java 项目分析显示以下警告: Property 'sonar.jacoco.reportPath' is deprecated (JaCoCo binary fo
我有一个在 jboss 7.1.3 上部署并使用 arquillian 进行测试的项目,我正在尝试向其中添加代码覆盖率指标。 我正在使用托管容器选项(jboss-as-arquillian-conta
我是一名优秀的程序员,十分优秀!