Search code examples
javaopenrewrite

When updating from spring boot 2.7 to 3 with openrewrite I get a Java heap space error


I am trying to migrate from Spring Boot 2.7 to 3 using openrewrite.recipe:rewrite-spring:5.0.3

I am using Java 17 and running the plugin in the command line like this:

mvn -U org.openrewrite.maven:rewrite-maven-plugin:run -Drewrite.recipeArtifactCoordinates=org.openrewrite.recipe:rewrite-spring:5.0.6 -Drewrite.activeRecipes=org.openrewrite.java.spring.boot3.UpgradeSpringBoot_3_1

I get a stdout GCLocker error:

[162.374s][warning][gc,alloc] ClassGraph-worker-687: Retried waiting for GCLocker too often allocating 2050 words

The plugin execution fails with the following OutOfMemoryError:

[ERROR] Failed to execute goal org.openrewrite.maven:rewrite-maven-plugin:5.3.2:run (default-cli) on project xxxxxxx: Execution default-cli of goal org.openrewrite.maven:rewrite-maven-plugin:5.3.2:run failed: Uncaught exception during scan: Java heap space -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.openrewrite.maven:rewrite-maven-plugin:5.3.2:run (default-cli) on project myproject: Execution default-cli of goal org.openrewrite.maven:rewrite-maven-plugin:5.3.2:run failed: Uncaught exception during scan
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:215)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:156)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:148)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81)
    at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:56)
    at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:305)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192)
    at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105)
    at org.apache.maven.cli.MavenCli.execute (MavenCli.java:957)
    at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:289)
    at org.apache.maven.cli.MavenCli.main (MavenCli.java:193)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:77)
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke (Method.java:568)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:282)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:225)
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:406)
    at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:347)
    at org.codehaus.classworlds.Launcher.main (Launcher.java:47)
Caused by: org.apache.maven.plugin.PluginExecutionException: Execution default-cli of goal org.openrewrite.maven:rewrite-maven-plugin:5.3.2:run failed: Uncaught exception during scan
    at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:148)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:210)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:156)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:148)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81)
    at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:56)
    at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:305)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192)
    at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105)
    at org.apache.maven.cli.MavenCli.execute (MavenCli.java:957)
    at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:289)
    at org.apache.maven.cli.MavenCli.main (MavenCli.java:193)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:77)
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke (Method.java:568)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:282)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:225)
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:406)
    at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:347)
    at org.codehaus.classworlds.Launcher.main (Launcher.java:47)
Caused by: io.github.classgraph.ClassGraphException: Uncaught exception during scan
    at io.github.classgraph.ClassGraph.scan (ClassGraph.java:1610)
    at io.github.classgraph.ClassGraph.scan (ClassGraph.java:1627)
    at io.github.classgraph.ClassGraph.scan (ClassGraph.java:1640)
    at org.openrewrite.java.marker.JavaSourceSet.build (JavaSourceSet.java:81)
    at org.openrewrite.maven.MavenMojoProjectParser.sourceSet (MavenMojoProjectParser.java:371)
    at org.openrewrite.maven.MavenMojoProjectParser.processMainSources (MavenMojoProjectParser.java:308)
    at org.openrewrite.maven.MavenMojoProjectParser.listSourceFiles (MavenMojoProjectParser.java:172)
    at org.openrewrite.maven.MavenMojoProjectParser.lambda$listSourceFiles$0 (MavenMojoProjectParser.java:145)
    at java.util.stream.ReferencePipeline$7$1.accept (ReferencePipeline.java:273)
    at java.util.ArrayList$ArrayListSpliterator.forEachRemaining (ArrayList.java:1625)
    at java.util.stream.AbstractPipeline.copyInto (AbstractPipeline.java:509)
    at java.util.stream.AbstractPipeline.wrapAndCopyInto (AbstractPipeline.java:499)
    at java.util.stream.ReduceOps$ReduceOp.evaluateSequential (ReduceOps.java:921)
    at java.util.stream.AbstractPipeline.evaluate (AbstractPipeline.java:234)
    at java.util.stream.ReferencePipeline.collect (ReferencePipeline.java:682)
    at org.openrewrite.maven.AbstractRewriteMojo.sourcesWithAutoDetectedStyles (AbstractRewriteMojo.java:281)
    at org.openrewrite.maven.AbstractRewriteMojo.loadSourceSet (AbstractRewriteMojo.java:258)
    at org.openrewrite.maven.AbstractRewriteMojo.listResults (AbstractRewriteMojo.java:239)
    at org.openrewrite.maven.AbstractRewriteRunMojo.execute (AbstractRewriteRunMojo.java:53)
    at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:137)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:210)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:156)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:148)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81)
    at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:56)
    at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:305)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192)
    at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105)
    at org.apache.maven.cli.MavenCli.execute (MavenCli.java:957)
    at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:289)
    at org.apache.maven.cli.MavenCli.main (MavenCli.java:193)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:77)
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke (Method.java:568)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:282)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:225)
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:406)
    at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:347)
    at org.codehaus.classworlds.Launcher.main (Launcher.java:47)
Caused by: java.lang.OutOfMemoryError: Java heap space
    at nonapi.io.github.classgraph.fileslice.reader.ClassfileReader.<init> (ClassfileReader.java:150)
    at io.github.classgraph.ClasspathElementZip$1.openClassfile (ClasspathElementZip.java:376)
    at io.github.classgraph.Classfile.<init> (Classfile.java:2002)
    at io.github.classgraph.Scanner$ClassfileScannerWorkUnitProcessor.processWorkUnit (Scanner.java:725)
    at io.github.classgraph.Scanner$ClassfileScannerWorkUnitProcessor.processWorkUnit (Scanner.java:647)
    at nonapi.io.github.classgraph.concurrency.WorkQueue.runWorkLoop (WorkQueue.java:246)
    at nonapi.io.github.classgraph.concurrency.WorkQueue.access$000 (WorkQueue.java:50)
    at nonapi.io.github.classgraph.concurrency.WorkQueue$1.call (WorkQueue.java:201)
    at nonapi.io.github.classgraph.concurrency.WorkQueue$1.call (WorkQueue.java:198)
    at java.util.concurrent.FutureTask.run (FutureTask.java:264)
    at java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1136)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run (ThreadPoolExecutor.java:635)
    at java.lang.Thread.run (Thread.java:833)

After reading this post about GCLocker OOM exceptions , I reran the plugin the following VM options:

-XX:+UnlockDiagnosticVMOptions
-XX:GCLockerRetryAllocationCount=100

The plugin fails with NoSuchMethodError:

Error while visiting MyClass.java: java.lang.NoSuchMethodError: 'void org.openrewrite.java.tree.J$Identifier.<init>(java.util.UUID, org.openrewrite.java.tree.Space, org.openrewrite.marker.Markers, java.util.List, java.lang.String, org.openrewrite.java.tree.JavaType, org.openrewrite.java.tree.JavaType$Variable)'
  org.openrewrite.staticanalysis.InstanceOfPatternMatch$InstanceOfPatternReplacements.processInstanceOf(InstanceOfPatternMatch.java:215)
  org.openrewrite.staticanalysis.InstanceOfPatternMatch$UseInstanceOfPatternMatching.visitInstanceOf(InstanceOfPatternMatch.java:302)
  org.openrewrite.staticanalysis.InstanceOfPatternMatch$UseInstanceOfPatternMatching.visitInstanceOf(InstanceOfPatternMatch.java:286)
  org.openrewrite.java.tree.J$InstanceOf.acceptJava(J.java:2818)
  org.openrewrite.java.tree.J.accept(J.java:59)
  org.openrewrite.TreeVisitor.visit(TreeVisitor.java:278)
  org.openrewrite.TreeVisitor.visitAndCast(TreeVisitor.java:361)
  org.openrewrite.java.JavaVisitor.visitRightPadded(JavaVisitor.java:1283)
  ...

I have also tried as suggested in the comments to increase Java Heap memory with flag: -Xmx8G. I still get a NoSuchMethodError.

Full stacktrace:

[ERROR] Failed to execute goal org.openrewrite.maven:rewrite-maven-plugin:5.3.2:run (default-cli) on project myproject: Execution default-cli of goal org.openrewrite.maven:rewrite-maven-plugin:5.3.2:run failed: Error while visiting MyClass.java: java.lang.NoSuchMethodError: 'void org.openrewrite.java.tree.J$Identifier.<init>(java.util.UUID, org.openrewrite.java.tree.Space, org.openrewrite.marker.Markers, java.util.List
, java.lang.String, org.openrewrite.java.tree.JavaType, org.openrewrite.java.tree.JavaType$Variable)'
[ERROR]   org.openrewrite.staticanalysis.InstanceOfPatternMatch$InstanceOfPatternReplacements.processInstanceOf(InstanceOfPatternMatch.java:215)
[ERROR]   org.openrewrite.staticanalysis.InstanceOfPatternMatch$UseInstanceOfPatternMatching.visitInstanceOf(InstanceOfPatternMatch.java:302)
[ERROR]   org.openrewrite.staticanalysis.InstanceOfPatternMatch$UseInstanceOfPatternMatching.visitInstanceOf(InstanceOfPatternMatch.java:286)
[ERROR]   org.openrewrite.java.tree.J$InstanceOf.acceptJava(J.java:2818)
[ERROR]   org.openrewrite.java.tree.J.accept(J.java:59)
[ERROR]   org.openrewrite.TreeVisitor.visit(TreeVisitor.java:278)
[ERROR]   org.openrewrite.TreeVisitor.visitAndCast(TreeVisitor.java:361)
[ERROR]   org.openrewrite.java.JavaVisitor.visitRightPadded(JavaVisitor.java:1283)
[ERROR]   ...
[ERROR] -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.openrewrite.maven:rewrite-maven-plugin:5.3.2:run (default-cli) on project myproject: Execution default-cli of goal org.openrewrite.maven:rewrite-maven-plugin:5.3.2:run failed:
 Error while visiting MyClass.java: java.lang.NoSuchMethodError: 'void org.openrewrite.java.tree.J$Identifier.<init>(java.util.UUID, org.openrewrite.java.tree.Space
, org.openrewrite.marker.Markers, java.util.List, java.lang.String, org.openrewrite.java.tree.JavaType, org.openrewrite.java.tree.JavaType$Variable)'
  org.openrewrite.staticanalysis.InstanceOfPatternMatch$InstanceOfPatternReplacements.processInstanceOf(InstanceOfPatternMatch.java:215)
  org.openrewrite.staticanalysis.InstanceOfPatternMatch$UseInstanceOfPatternMatching.visitInstanceOf(InstanceOfPatternMatch.java:302)
  org.openrewrite.staticanalysis.InstanceOfPatternMatch$UseInstanceOfPatternMatching.visitInstanceOf(InstanceOfPatternMatch.java:286)
  org.openrewrite.java.tree.J$InstanceOf.acceptJava(J.java:2818)
  org.openrewrite.java.tree.J.accept(J.java:59)
  org.openrewrite.TreeVisitor.visit(TreeVisitor.java:278)
  org.openrewrite.TreeVisitor.visitAndCast(TreeVisitor.java:361)
  org.openrewrite.java.JavaVisitor.visitRightPadded(JavaVisitor.java:1283)
  ...
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:215)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:156)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:148)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81)
    at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:56)
    at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:305)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192)
    at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105)
    at org.apache.maven.cli.MavenCli.execute (MavenCli.java:972)
    at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:293)
    at org.apache.maven.cli.MavenCli.main (MavenCli.java:196)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:77)
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke (Method.java:568)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:282)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:225)
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:406)
    at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:347)
Caused by: org.apache.maven.plugin.PluginExecutionException: Execution default-cli of goal org.openrewrite.maven:rewrite-maven-plugin:5.3.2:run failed: Error while visiting MyClass.java: 'void org.openrewrite.java.tree.J$Identifier.<init>(java.util.UUID, org.openrewrite.java.tree.Space, org.openrewrite.marker.Markers, java.util.List, java.lang.String, org.openrewrite.java.tree.JavaType, org.ope
nrewrite.java.tree.JavaType$Variable)'
  org.openrewrite.staticanalysis.InstanceOfPatternMatch$InstanceOfPatternReplacements.processInstanceOf(InstanceOfPatternMatch.java:215)
  org.openrewrite.staticanalysis.InstanceOfPatternMatch$UseInstanceOfPatternMatching.visitInstanceOf(InstanceOfPatternMatch.java:302)
  org.openrewrite.staticanalysis.InstanceOfPatternMatch$UseInstanceOfPatternMatching.visitInstanceOf(InstanceOfPatternMatch.java:286)
  org.openrewrite.java.tree.J$InstanceOf.acceptJava(J.java:2818)
  org.openrewrite.java.tree.J.accept(J.java:59)
  org.openrewrite.TreeVisitor.visit(TreeVisitor.java:278)
  org.openrewrite.TreeVisitor.visitAndCast(TreeVisitor.java:361)
  org.openrewrite.java.JavaVisitor.visitRightPadded(JavaVisitor.java:1283)
  ...
    at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:148)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:210)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:156)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:148)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81)
    at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:56)
    at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:305)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192)
    at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105)
    at org.apache.maven.cli.MavenCli.execute (MavenCli.java:972)
    at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:293)
    at org.apache.maven.cli.MavenCli.main (MavenCli.java:196)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:77)
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke (Method.java:568)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:282)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:225)
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:406)
    at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:347)
Caused by: java.lang.RuntimeException: Error while visiting MyClass.java: java.lang.NoSuchMethodError: 'void org.openrewrite.java.tree.J$Identifier.<init>(java.util
.UUID, org.openrewrite.java.tree.Space, org.openrewrite.marker.Markers, java.util.List, java.lang.String, org.openrewrite.java.tree.JavaType, org.openrewrite.java.tree.JavaType$Variable)'
  org.openrewrite.staticanalysis.InstanceOfPatternMatch$InstanceOfPatternReplacements.processInstanceOf(InstanceOfPatternMatch.java:215)
  org.openrewrite.staticanalysis.InstanceOfPatternMatch$UseInstanceOfPatternMatching.visitInstanceOf(InstanceOfPatternMatch.java:302)
  org.openrewrite.staticanalysis.InstanceOfPatternMatch$UseInstanceOfPatternMatching.visitInstanceOf(InstanceOfPatternMatch.java:286)
  org.openrewrite.java.tree.J$InstanceOf.acceptJava(J.java:2818)
  org.openrewrite.java.tree.J.accept(J.java:59)
  org.openrewrite.TreeVisitor.visit(TreeVisitor.java:278)
  org.openrewrite.TreeVisitor.visitAndCast(TreeVisitor.java:361)
  org.openrewrite.java.JavaVisitor.visitRightPadded(JavaVisitor.java:1283)
  ...
    at org.openrewrite.maven.AbstractRewriteMojo$ResultsContainer$1.lambda$preVisit$0 (AbstractRewriteMojo.java:417)
    at java.util.Optional.ifPresent (Optional.java:178)
    at org.openrewrite.maven.AbstractRewriteMojo$ResultsContainer$1.preVisit (AbstractRewriteMojo.java:414)
    at org.openrewrite.maven.AbstractRewriteMojo$ResultsContainer$1.preVisit (AbstractRewriteMojo.java:410)
    at org.openrewrite.maven.AbstractRewriteMojo_ResultsContainer_1_JavaVisitor.preVisit (AbstractRewriteMojo_ResultsContainer_1_JavaVisitor.zig:81)
    at org.openrewrite.TreeVisitor.visit (TreeVisitor.java:275)
    at org.openrewrite.TreeVisitor.visitAndCast (TreeVisitor.java:361)
    at org.openrewrite.java.JavaVisitor.visitRightPadded (JavaVisitor.java:1283)
    at org.openrewrite.java.JavaVisitor.visitControlParentheses (JavaVisitor.java:495)
    at org.openrewrite.java.tree.J$ControlParentheses.acceptJava (J.java:4512)
    at org.openrewrite.java.tree.J.accept (J.java:59)
    at org.openrewrite.TreeVisitor.visit (TreeVisitor.java:278)
    at org.openrewrite.TreeVisitor.visitAndCast (TreeVisitor.java:361)
    at org.openrewrite.java.JavaVisitor.visitIf (JavaVisitor.java:663)
    at org.openrewrite.java.tree.J$If.acceptJava (J.java:2432)
    at org.openrewrite.java.tree.J.accept (J.java:59)
    at org.openrewrite.TreeVisitor.visit (TreeVisitor.java:278)
    at org.openrewrite.TreeVisitor.visitAndCast (TreeVisitor.java:361)
    at org.openrewrite.java.JavaVisitor.visitRightPadded (JavaVisitor.java:1283)
    at org.openrewrite.java.JavaVisitor.lambda$visitBlock$4 (JavaVisitor.java:366)
    at org.openrewrite.internal.ListUtils.map (ListUtils.java:176)
    at org.openrewrite.java.JavaVisitor.visitBlock (JavaVisitor.java:365)
    at org.openrewrite.java.tree.J$Block.acceptJava (J.java:767)
    at org.openrewrite.java.tree.J.accept (J.java:59)
    at org.openrewrite.TreeVisitor.visit (TreeVisitor.java:278)
    at org.openrewrite.TreeVisitor.visitAndCast (TreeVisitor.java:361)
    at org.openrewrite.java.JavaVisitor.visitMethodDeclaration (JavaVisitor.java:816)
    at org.openrewrite.java.tree.J$MethodDeclaration.acceptJava (J.java:3448)
    at org.openrewrite.java.tree.J.accept (J.java:59)
    at org.openrewrite.TreeVisitor.visit (TreeVisitor.java:278)
    at org.openrewrite.TreeVisitor.visitAndCast (TreeVisitor.java:361)
    at org.openrewrite.java.JavaVisitor.visitRightPadded (JavaVisitor.java:1283)
    at org.openrewrite.java.JavaVisitor.lambda$visitBlock$4 (JavaVisitor.java:366)
    at org.openrewrite.internal.ListUtils.map (ListUtils.java:176)
    at org.openrewrite.java.JavaVisitor.visitBlock (JavaVisitor.java:365)
    at org.openrewrite.java.tree.J$Block.acceptJava (J.java:767)
    at org.openrewrite.java.tree.J.accept (J.java:59)
    at org.openrewrite.TreeVisitor.visit (TreeVisitor.java:278)
    at org.openrewrite.TreeVisitor.visitAndCast (TreeVisitor.java:361)
    at org.openrewrite.java.JavaVisitor.visitClassDeclaration (JavaVisitor.java:453)
    at org.openrewrite.java.tree.J$ClassDeclaration.acceptJava (J.java:1217)
    at org.openrewrite.java.tree.J.accept (J.java:59)
    at org.openrewrite.TreeVisitor.visit (TreeVisitor.java:278)
    at org.openrewrite.TreeVisitor.visitAndCast (TreeVisitor.java:361)
    at org.openrewrite.java.JavaVisitor.lambda$visitCompilationUnit$10 (JavaVisitor.java:466)
    at org.openrewrite.internal.ListUtils.map (ListUtils.java:176)
    at org.openrewrite.java.JavaVisitor.visitCompilationUnit (JavaVisitor.java:466)
    at org.openrewrite.java.tree.J$CompilationUnit.acceptJava (J.java:1520)
    at org.openrewrite.java.tree.J.accept (J.java:59)
    at org.openrewrite.TreeVisitor.visit (TreeVisitor.java:278)
    at org.openrewrite.maven.AbstractRewriteMojo$ResultsContainer.getRecipeErrors (AbstractRewriteMojo.java:421)
    at org.openrewrite.maven.AbstractRewriteMojo$ResultsContainer.getFirstException (AbstractRewriteMojo.java:401)
    at org.openrewrite.maven.AbstractRewriteRunMojo.execute (AbstractRewriteRunMojo.java:54)
    at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:137)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:210)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:156)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:148)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117)
    at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:56)

    at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:305)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192)
    at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105)
    at org.apache.maven.cli.MavenCli.execute (MavenCli.java:972)
    at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:293)
    at org.apache.maven.cli.MavenCli.main (MavenCli.java:196)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:77)
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke (Method.java:568)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:282)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:225)
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:406)
    at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:347)
[ERROR]
[ERROR] Re-run Maven using the -X switch to enable full debug logging.

Any idea how to fix this?

Later edit: It finally worked with a huge Java Heap: -Xmx25G and also adding these VM options: -XX:+UnlockDiagnosticVMOptions XX:GCLockerRetryAllocationCount=100


Solution

  • It finally worked when adding these VM options: -Xmx25G -XX:+UnlockDiagnosticVMOptions XX:GCLockerRetryAllocationCount=100. So basically I increased the Java Heap and increased the GCLockerRetryAllocationCount from the default value 2, to 100. Thanks Tim for your comment.