Skip to content

Gradle "parsing failed" upon clean test run #15169

@jglapa

Description

@jglapa

Expected Behavior

./gradlew cleanTest test --no-daemon

the command used to work but after upgrading to grails 7 it fails with dubious error message.
It appears it fails in a clean environment e.g. ci build, locally it passes but if executed without any cache it also fails.

Actual Behaviour

the test job fails with just parsing failed message, when adding --info the following is observed:

[2025-10-24T06:29:05.820Z] > Task :compileTestJava NO-SOURCE
[2025-10-24T06:29:05.820Z] Skipping task ':compileTestJava' as it has no source files and no previous output files.
[2025-10-24T06:29:05.821Z] Resolve mutations for :compileTestGroovy (Thread[included builds,5,main]) started.
[2025-10-24T06:29:05.821Z] :compileTestGroovy (Thread[included builds,5,main]) started.
[2025-10-24T06:29:09.365Z] 
[2025-10-24T06:29:09.365Z] > Task :compileTestGroovy
[2025-10-24T06:29:09.365Z] Custom actions are attached to task ':compileTestGroovy'.
[2025-10-24T06:29:09.365Z] Caching disabled for task ':compileTestGroovy' because:
[2025-10-24T06:29:09.365Z]   Gradle does not know how file 'build/grailsGroovyCompilerConfig.groovy' was created (output property '$1'). Task output caching requires exclusive access to output paths to guarantee correctness (i.e. multiple tasks are not allowed to produce output in the same location).
[2025-10-24T06:29:09.365Z] Task ':compileTestGroovy' is not up-to-date because:
[2025-10-24T06:29:09.365Z]   No history is available.
[2025-10-24T06:29:09.365Z] The input changes require a full rebuild for incremental task ':compileTestGroovy'.
[2025-10-24T06:29:09.365Z] Compilation mode: in-process compilation
[2025-10-24T06:29:44.509Z] parsing failed
[2025-10-24T06:29:44.509Z] 
[2025-10-24T06:29:44.509Z] > Task :compileTestGroovy FAILED
[2025-10-24T06:29:44.509Z] 
[2025-10-24T06:29:44.509Z] 
[2025-10-24T06:29:44.509Z] FAILURE: Build failed with an exception.
[2025-10-24T06:29:44.509Z] 
[2025-10-24T06:29:44.509Z] * What went wrong:
[2025-10-24T06:29:44.509Z] Execution failed for task ':compileTestGroovy'.
[2025-10-24T06:29:44.509Z] > Compilation failed; see the compiler error output for details.
[2025-10-24T06:29:44.509Z] 

there are no more details included, when trying the same with --stacktrace, there's an exception but not revealing a lot:

2025-10-24T08:37:10.372+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':compileTestGroovy'.
2025-10-24T08:37:10.372+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.lambda$executeIfValid$1(ExecuteActionsTaskExecuter.java:130)
2025-10-24T08:37:10.372+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.internal.Try$Failure.ifSuccessfulOrElse(Try.java:293)
2025-10-24T08:37:10.373+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeIfValid(ExecuteActionsTaskExecuter.java:128)
2025-10-24T08:37:10.373+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:116)
2025-10-24T08:37:10.373+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.ProblemsTaskPathTrackingTaskExecuter.execute(ProblemsTaskPathTrackingTaskExecuter.java:41)
2025-10-24T08:37:10.373+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.FinalizePropertiesTaskExecuter.execute(FinalizePropertiesTaskExecuter.java:46)
2025-10-24T08:37:10.373+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.ResolveTaskExecutionModeExecuter.execute(ResolveTaskExecutionModeExecuter.java:51)
2025-10-24T08:37:10.373+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:57)
2025-10-24T08:37:10.373+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:74)
2025-10-24T08:37:10.373+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:36)
2025-10-24T08:37:10.373+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.executeTask(EventFiringTaskExecuter.java:77)
2025-10-24T08:37:10.373+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:55)
2025-10-24T08:37:10.373+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:52)
2025-10-24T08:37:10.373+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:210)
2025-10-24T08:37:10.373+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:205)
2025-10-24T08:37:10.373+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:67)
2025-10-24T08:37:10.373+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:60)
2025-10-24T08:37:10.373+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:167)
2025-10-24T08:37:10.373+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:60)
2025-10-24T08:37:10.373+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.internal.operations.DefaultBuildOperationRunner.call(DefaultBuildOperationRunner.java:54)
2025-10-24T08:37:10.373+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter.execute(EventFiringTaskExecuter.java:52)
2025-10-24T08:37:10.373+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.execution.plan.LocalTaskNodeExecutor.execute(LocalTaskNodeExecutor.java:42)
2025-10-24T08:37:10.373+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:331)
2025-10-24T08:37:10.374+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:318)
2025-10-24T08:37:10.374+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.lambda$execute$0(DefaultTaskExecutionGraph.java:314)
2025-10-24T08:37:10.374+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.internal.operations.CurrentBuildOperationRef.with(CurrentBuildOperationRef.java:85)
2025-10-24T08:37:10.374+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:314)
2025-10-24T08:37:10.374+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:303)
2025-10-24T08:37:10.374+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.execute(DefaultPlanExecutor.java:459)
2025-10-24T08:37:10.374+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.run(DefaultPlanExecutor.java:376)
2025-10-24T08:37:10.374+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64)
2025-10-24T08:37:10.374+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.internal.concurrent.AbstractManagedExecutor$1.run(AbstractManagedExecutor.java:48)
2025-10-24T08:37:10.374+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] Caused by: org.gradle.api.internal.tasks.compile.CompilationFailedException: Compilation failed; see the compiler error output for details.
2025-10-24T08:37:10.374+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.compile.ApiGroovyCompiler.execute(ApiGroovyCompiler.java:297)
2025-10-24T08:37:10.374+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.compile.ApiGroovyCompiler.execute(ApiGroovyCompiler.java:67)
2025-10-24T08:37:10.374+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.compile.GroovyCompilerFactory$DaemonSideCompiler.execute(GroovyCompilerFactory.java:115)
2025-10-24T08:37:10.374+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.compile.GroovyCompilerFactory$DaemonSideCompiler.execute(GroovyCompilerFactory.java:99)
2025-10-24T08:37:10.374+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.compile.daemon.AbstractIsolatedCompilerWorkerExecutor$CompilerWorkAction.execute(AbstractIsolatedCompilerWorkerExecutor.java:78)
2025-10-24T08:37:10.374+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.workers.internal.DefaultWorkerServer.execute(DefaultWorkerServer.java:63)
2025-10-24T08:37:10.374+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.workers.internal.AbstractClassLoaderWorker$1.create(AbstractClassLoaderWorker.java:54)
2025-10-24T08:37:10.374+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.workers.internal.AbstractClassLoaderWorker$1.create(AbstractClassLoaderWorker.java:48)
2025-10-24T08:37:10.374+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.internal.classloader.ClassLoaderUtils.executeInClassloader(ClassLoaderUtils.java:100)
2025-10-24T08:37:10.374+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.workers.internal.AbstractClassLoaderWorker.executeInClassLoader(AbstractClassLoaderWorker.java:48)
2025-10-24T08:37:10.375+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.workers.internal.IsolatedClassloaderWorker.run(IsolatedClassloaderWorker.java:49)
2025-10-24T08:37:10.375+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.workers.internal.IsolatedClassloaderWorker.run(IsolatedClassloaderWorker.java:30)
2025-10-24T08:37:10.375+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.workers.internal.WorkerDaemonServer.run(WorkerDaemonServer.java:108)
2025-10-24T08:37:10.375+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.workers.internal.WorkerDaemonServer.run(WorkerDaemonServer.java:77)
2025-10-24T08:37:10.375+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.process.internal.worker.request.WorkerAction.lambda$run$1(WorkerAction.java:150)
2025-10-24T08:37:10.375+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.process.internal.worker.child.WorkerLogEventListener.withWorkerLoggingProtocol(WorkerLogEventListener.java:41)
2025-10-24T08:37:10.375+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.process.internal.worker.request.WorkerAction.lambda$run$2(WorkerAction.java:150)
2025-10-24T08:37:10.375+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.internal.operations.CurrentBuildOperationRef.with(CurrentBuildOperationRef.java:85)
2025-10-24T08:37:10.375+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.process.internal.worker.request.WorkerAction.run(WorkerAction.java:142)
2025-10-24T08:37:10.375+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
2025-10-24T08:37:10.375+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
2025-10-24T08:37:10.375+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
2025-10-24T08:37:10.375+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:36)
2025-10-24T08:37:10.375+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
2025-10-24T08:37:10.375+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.internal.remote.internal.hub.MessageHubBackedObjectConnection$DispatchWrapper.dispatch(MessageHubBackedObjectConnection.java:182)
2025-10-24T08:37:10.375+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.internal.remote.internal.hub.MessageHubBackedObjectConnection$DispatchWrapper.dispatch(MessageHubBackedObjectConnection.java:164)
2025-10-24T08:37:10.375+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.internal.remote.internal.hub.MessageHub$Handler.run(MessageHub.java:414)
2025-10-24T08:37:10.375+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64)
2025-10-24T08:37:10.375+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.internal.concurrent.AbstractManagedExecutor$1.run(AbstractManagedExecutor.java:48)
2025-10-24T08:37:10.375+0200 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]

Steps To Reproduce

I'm not able to reproduce this in an isolated example.
I was suspecting a "bad" test but when running a subset of tests ( tried bisecting to get possibly the problematic spec) it didn't reveal much.
It's as if some kind of race condition is in place.
A workaround I found is to run the tests in 2 phases :

./gradlew clean classes --no-daemon && ./gradlew test --no-daemon

this works reliably

Environment Information

No response

Example Application

No response

Version

7.0.0

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    Status

    No status

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions