Skip to content

NPE in GroovyCompilationUnitDeclaration with Eclipse 2025-06 and G-E 5.8.0.v202506172000-e2506 #1629

@davidmichaelkarr

Description

@davidmichaelkarr

I support a couple of hundred SpringBoot services, built with Maven, some of them using Spock tests. Most of them don't cause a problem when I import them in Eclipse. Some of them give Eclipse fits and I simply have to close them to be able to get anything done.

I recently had to examine one of these. I first tried it with Eclipse 2025-03, and I had just started setting up 2025-06, and I get similar behavior there. I'm using the Groovy-Eclipse version in the title.

In the Eclipse log, I see this:

java.lang.RuntimeException: Internal Error compiling /paymentms/src/test/groovy/com/att/idp/payment/common/CardTypeDetectorSpec.groovy
	at org.eclipse.jdt.internal.compiler.ProcessTaskManager.processing(ProcessTaskManager.java:139)
	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572)
	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
	at java.base/java.lang.Thread.run(Thread.java:1570)
Caused by: java.lang.NullPointerException: Cannot invoke "org.codehaus.groovy.ast.ModuleNode.putNodeMetaData(Object, Object)" because the return value of "org.codehaus.jdt.groovy.internal.compiler.ast.GroovyCompilationUnitDeclaration.getModuleNode()" is null
	at org.codehaus.jdt.groovy.internal.compiler.ast.GroovyCompilationUnitDeclaration.generateCode(GroovyCompilationUnitDeclaration.java:342)
	at org.eclipse.jdt.internal.compiler.Compiler.process(Compiler.java:844)
	at org.eclipse.jdt.internal.compiler.ProcessTaskManager.processing(ProcessTaskManager.java:135)
	... 5 more

In Eclipse, I see an error dialog, saying "Multiple problems have occurred", showing multiple "Build" entries. When I dismiss that dialog, it comes up again almost immediately. It is a challenge to mouse over to the project quickly enough to close it before the dialog comes up again.

I then tried renaming this class to "groovy.bak" so Eclipse wouldn't try to compile it. That simply resulted in it doing the same thing with a different Spock class.

Providing a project to reproduce this will not be practical, but I can provide some pieces of the source code that might help.

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions