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

如何在JaCoCo覆盖率报告中排除org开头的无关类元素?

AOSP 配置JaCoCo覆盖率排除无关org类的方法

方法1:在目标模块的Android.bp中配置过滤规则

在目标模块的构建配置中添加jacoco排除规则,该方式永久生效,无需每次编译加参数:

java_library {
    name: "你的目标业务模块名称",
    // 保留原有其他配置不变
    jacoco: {
        exclude_filter: [
            "org.*",
            // 可按需添加其他需要排除的系统包路径,例如 "android.*"、"com.google.*" 等
        ],
    },
}

方法2:编译时添加环境变量过滤

编译命令中新增EXCLUDE_JACOCO_PATTERN参数直接过滤org开头的包:

EMMA_INSTRUMENT=true EMMA_INSTRUMENT_FRAMEWORK=false EMMA_INSTRUMENT_STATIC=true ANDROID_COMPILE_WITH_JACK=false SKIP_BOOT_JARS_CHECK=true EXCLUDE_JACOCO_PATTERN="org.*" -f build/core/main.mk 你的目标模块名称

方法3:生成报告阶段手动过滤

如果已经拿到覆盖率原始数据文件,可在调用JaCoCo生成报告的命令中添加排除规则:

java -jar jacococli.jar report 你的覆盖率数据文件.ec \
  --classfiles 目标模块编译输出的class文件目录 \
  --html ./coverage_result \
  --exclude "org/**"

注:你使用的0.7.10版本JaCoCo完全兼容上述三种过滤方案,优先推荐第一种修改Android.bp的方案,稳定性最高。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 22:48:04