勺子和Jacoco与gradle

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了勺子和Jacoco与gradle相关的知识,希望对你有一定的参考价值。

我使用最新的gradle版本(3.3)和最新的android gradle插件(2.3.3)以及最新的jacoco版本(0.7.7)。我能够获得覆盖率报告和测试结果,就像一个魅力。

但是我添加勺子插件的那一刻(我甚至没有应用勺子插件,只是将它添加到构建脚本块中的类路径)我开始得到jacoco代理(java.lang.NoClassDefFoundError: org/jacoco/agent/rt/internal_b0d6a23/Offline)的错误。我看到了关于错误的多个问题,但除非我使用过时版本的android gradle插件和jacoco用勺子,否则没有解决方案可行。

如果有人真正解决问题,请帮忙。

答案

如果jacocoagent.jar具有与插件预期不同的Jacoco版本(在本例中为spoon插件),则会发生此错误。 org / jacoco / agent / rt / internal_b0d6a23 / Offline对于不同版本的jacoco,具有不同的internal_id / offline名称。这就是错误存在的原因。

如果其他人收到此错误,请尝试使用--info标志从命令行运行grade命令,使用“org / jacoco / agent / rt / internal_”运行grep,以检查是否使用了不同版本的Jacoco。

然后在gradle依赖关系图中检查不同版本的Jacoco,以检查哪个lib导致问题。

以上是关于勺子和Jacoco与gradle的主要内容,如果未能解决你的问题,请参考以下文章

百味勺子——复位配网和电量报警实现篇

勺子与 PostgreSql 的连接问题

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

精准测试与开源工具Jacoco的覆盖率能力大P

白盒测试理解与示例 与Jacoco

如何在eclipse中安装与使用jacoco