带有 Gradle 错误的 Jenkins Android 作业,Jacoco 调试

Posted

技术标签:

【中文标题】带有 Gradle 错误的 Jenkins Android 作业,Jacoco 调试【英文标题】:Jenkins Android jobs with Gradle error, Jacoco debugging 【发布时间】:2020-05-10 07:35:56 【问题描述】:

我在 Jenkins 有一些工作,我们运行 graddle 项目并且他们有一些 jacoco 报告。有时他们会失败,有时他们不会。这些是错误:

17:47:41    at org.jacoco.core.JaCoCo.<clinit>(JaCoCo.java:31)
17:47:41    ... 30 more
17:47:41 Caused by: java.lang.NullPointerException: Inflater has been closed
17:47:41    ... 31 more

What went wrong:
 Execution failed for task ':tv-natgeotv:jacocoandroidTvQaNonSecureDebug'.> Multiple task action failures occurred:
 > A failure occurred while executing com.android.build.gradle.internal.tasks.Workers$ActionFacade
 > java.lang.ExceptionInInitializerError (no error message)
 > A failure occurred while executing com.android.build.gradle.internal.tasks.Workers$ActionFacade
 > java.lang.ExceptionInInitializerError (no error message)

* What went wrong:

Execution failed for task ':tv-natgeotv:jacocoAndroidTvQaNonSecureDebug'.

> A failure occurred while executing com.android.build.gradle.internal.tasks.Workers$ActionFacade

   > java.lang.ExceptionInInitializerError (no error message)

在 Jenkins 中,我禁用了 disableConcurrentBuilds,每个作业都在单独的 docker 容器中运行,因此 docker 中的内存使用情况看起来不错。

【问题讨论】:

同样的问题,有解决方案吗? 【参考方案1】:

将 AGP 3.5+ 的 android.forceJacocoOutOfProcess=true 添加到 gradle.properties 似乎已经为我修复了。

【讨论】:

以上是关于带有 Gradle 错误的 Jenkins Android 作业,Jacoco 调试的主要内容,如果未能解决你的问题,请参考以下文章

Gradle Enterprise Gradle 插件 (com.gradle.enterprise) 在尝试构建我的项目时在 jenkins 中未发现错误

使用 Jenkins 构建 Gradle 项目时出错

Jenkins中配置gradle项目的坑

无法在 Jenkins 中运行程序“gradle”

如何在Jenkins,Git和Gradle的持续集成环境中处理用户名/密码? [关闭]

Jenkins报错'Gradle build daemon disappeared unexpectedly'的问题解决