You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

升级Android Studio 3.1.0后Jacoco运行时崩溃问题

解决Android Studio 3.1.0 + Gradle 4.4.0下Jacoco运行时NoClassDefFoundError问题

我之前也踩过这个一模一样的坑!升级到Android Studio 3.1.0和Gradle 4.4.0之后,Jacoco离线插桩直接触发NoClassDefFoundError: Failed resolution of: Lorg/jacoco/agent/rt/internal_773e439/Offline;的崩溃,折腾了好一阵才搞定,给你几个亲测有效的解决方案:

  • 匹配Jacoco与Gradle的版本
    Gradle 4.4.0对Jacoco的版本有兼容性要求,旧版本的Jacoco可能无法适配新的Gradle插件。建议在项目根目录的build.gradle中指定兼容的Jacoco版本,比如0.8.2:

    buildscript {
        repositories {
            mavenCentral()
        }
        dependencies {
            classpath 'org.jacoco:org.jacoco.core:0.8.2'
            // 别忘了保留你的Android Gradle插件配置,比如com.android.tools.build:gradle:3.1.0
        }
    }
    
  • 阻止混淆工具移除Jacoco插桩类
    如果你开启了ProGuard(AS 3.1.0默认使用ProGuard),混淆规则会把Jacoco的内部插桩类当成无用代码移除,导致运行时找不到类。在app模块的proguard-rules.pro里添加以下规则:

    -keep class org.jacoco.agent.rt.internal_** { *; }
    -dontwarn org.jacoco.agent.rt.internal_**
    
  • 清理缓存并重新构建
    IDE升级后很容易残留旧的构建缓存,干扰Jacoco的插桩流程。可以先执行命令行清理:

    ./gradlew clean
    

    再打开Android Studio,点击File > Invalidate Caches / Restart...,选择Invalidate and Restart,彻底清理缓存后重新构建项目。

  • 检查离线插桩的配置正确性
    如果你是手动配置Jacoco离线插桩,确保app模块的build.gradle里的插桩任务正确关联了编译流程。比如:

    android {
        buildTypes {
            debug {
                jacoco {
                    enabled = true
                    offlineInstrumentation = true
                }
            }
        }
    }
    
    task jacocoTestReport(type: JacocoReport) {
        // 确保这里的源文件、class文件路径配置正确
        sourceDirectories = files(android.sourceSets.main.java.srcDirs)
        classDirectories = files("$buildDir/intermediates/classes/debug")
        executionData = files("$buildDir/jacoco/testDebugUnitTest.exec")
    }
    

这个问题本质上是升级后Jacoco插桩的类没有被正确打包进APK,要么是版本不兼容导致插桩失败,要么是被混淆工具误删,或者缓存残留影响了构建流程,按上面的步骤来基本能解决。

内容的提问来源于stack exchange,提问作者BlackHatSamurai

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.21 07:04:19