Jacoco java.lang.instrument.IllegalClassFormatException:检测类时出错

Posted

技术标签:

【中文标题】Jacoco java.lang.instrument.IllegalClassFormatException:检测类时出错【英文标题】:Jacoco java.lang.instrument.IllegalClassFormatException: Error while instrumenting Class 【发布时间】:2021-12-22 16:13:59 【问题描述】:

我最近搬到了另一台电脑,需要重置我的所有环境。

所以,这个测试以前是有效的。

但我不记得我之前使用的是哪个版本的 Java/JDK。

好吧,问题是:

java.lang.instrument.IllegalClassFormatException: Error while instrumenting path/to/class

我正在使用 Jacoco "0.8.1"

java --version
openjdk 17.0.1 2021-10-19

和 JDK 1.8

有人知道怎么处理吗?

【问题讨论】:

【参考方案1】:

奇怪的说法

和 JDK 1.8

一起

java --version
openjdk 17.0.1 2021-10-19

从最后一个看来,您实际上正在使用 JDK 17

我正在使用 Jacoco“0.8.1”

我们(JaCoCo 的开发人员)建议始终使用最新发布的版本,因为新版本带有修复和改进(IMO 更新您的依赖项和工具的版本 - 通常也是一个非常好的做法),所以请尝试这个 - 因为今天最新发布的 JaCoCo 版本是 0.8.7,而正是在这个版本中添加了 JDK 17 支持。

【讨论】:

以上是关于Jacoco java.lang.instrument.IllegalClassFormatException:检测类时出错的主要内容,如果未能解决你的问题,请参考以下文章

jacoco原理

执行 JaCoCo 时出现“由于缺少执行数据文件而跳过 JaCoCo 执行”

jacoco 计算 jmeter动态覆盖率演示

Jacoco覆盖率工具使用

Jacoco+Jenkines小白之路

类的执行数据与+ Jacoco不匹配