小编Din*_*ian的帖子

带有默认方法的Java 8接口启用Jacoco时不起作用的方法

我们有一个带有默认方法的接口,我们在两个JavaKotlin类中实现了该接口,我们提供了非默认方法的实现.

当我们在调试模式(没有testCoverageEnabled = true)运行时,应用程序按预期工作.但是当我们使用testCoverageEnabled = true在不同的配置中运行时,应用程序崩溃时出现以下错误

java.lang.NoSuchMethodError: No static method $$triggerInterfaceInit()V in class Lcom/ui/viewholders/CAViewContract$$CC; or its super classes (declaration of 'ui.viewholders.CAViewContract$$CC' appears in /data/app/SMCXbiLYvHb1Kk08Kee__g==/base.apk)
    at home.c.CCFragment.<clinit>(Unknown Source:0)
    at home.HomePageCardProvider.getFragment(HomePageCardProvider.java:17)
    at home.HomeFragment.handleCardFragment(HomeFragment.java:172)
Run Code Online (Sandbox Code Playgroud)

注意: 1.JaCoCo版本:"0.8.0"2.操作系统:Android with minSdk 21

如果我们将minSdk更改为24,它testCoverageEnabled = true本身就可以正常工作.我们无法弄清楚确切的问题.

java android java-8 jacoco kotlin

7
推荐指数
1
解决办法
653
查看次数

标签 统计

android ×1

jacoco ×1

java ×1

java-8 ×1

kotlin ×1