我一直在努力解决这个只有在 Jenkins 中构建我的项目时才会出现的问题,但我从来没有在我的本地机器上重现它。
詹金斯
$ ./gradlew mockableAndroidJar
FAILURE: Build failed with an exception.
33:02:00
33:02:00 * What went wrong:
33:02:00 Execution failed for task 'app:mockableAndroidJar'.
33:02:00 > java.util.concurrent.ExecutionException: java.util.concurrent.ExecutionException: com.android.builder.utils.FileCache$FileCreatorException: java.lang.NullPointerException
本地:
$ ./gradlew mockableAndroidJar
> Configure project :lib
The com.google.protobuf plugin was already applied to the project: :lib and will not be applied again after plugin: android-library
BUILD SUCCESSFUL in 0s
2 actionable tasks: 1 executed, 1 up-to-date
当我进行研究时,每个人都建议在下面进行工作,但这不是我需要的解决方案,因为它只是跳过了这项任务,这会破坏我的一些单元测试。
gradle.taskGraph.whenReady {
tasks.each { task ->
if (task.name == 'mockableAndroidJar') {
task.enabled = false
}
}
}