Community
Participate
Working Groups
After upgrading to Eclipse Version: 2024-03 (4.31.0) Build id: 20240307-1437, I obtain the following error with classes annotated with @Builder annotation of lombok: Lombok annotation handler class lombok.eclipse.handlers.HandleBuilder failed - See error log. eclipse.buildId=4.31.0.20240307-1200 java.version=17.0.10 java.vendor=Eclipse Adoptium BootLoader constants: OS=macosx, ARCH=x86_64, WS=cocoa, NL=it_IT Framework arguments: -product org.eclipse.epp.package.jee.product -keyring /Users/myuser/.eclipse_keyring Command-line arguments: -os macosx -ws cocoa -arch x86_64 -product org.eclipse.epp.package.jee.product -keyring /Users/myuser/.eclipse_keyring -data file:/Users/myuser/workspaces/ This is a continuation of log file /Users/myuser/workspaces/.metadata/.bak_0.log Created Time: 2024-03-15 15:17:24.761 java.lang.NoSuchMethodError: 'java.lang.StringBuffer org.eclipse.jdt.internal.compiler.ast.Expression.print(int, java.lang.StringBuffer)' at lombok.eclipse.handlers.EclipseHandlerUtil.createAnnotation(EclipseHandlerUtil.java:1335) at lombok.eclipse.HandlerLibrary$AnnotationHandlerContainer.handle(HandlerLibrary.java:105) at lombok.eclipse.HandlerLibrary.handleAnnotation(HandlerLibrary.java:237) at lombok.eclipse.TransformEclipseAST$AnnotationVisitor.visitAnnotationOnMethod(TransformEclipseAST.java:260) at lombok.eclipse.EclipseNode.traverse(EclipseNode.java:113) at lombok.eclipse.EclipseAST.traverseChildren(EclipseAST.java:231) at lombok.eclipse.EclipseNode.traverse(EclipseNode.java:90) at lombok.eclipse.EclipseAST.traverseChildren(EclipseAST.java:231) at lombok.eclipse.EclipseNode.traverse(EclipseNode.java:74) at lombok.eclipse.EclipseAST.traverseChildren(EclipseAST.java:231) at lombok.eclipse.EclipseNode.traverse(EclipseNode.java:69) at lombok.eclipse.EclipseAST.traverse(EclipseAST.java:224) at lombok.eclipse.TransformEclipseAST.go(TransformEclipseAST.java:222) at lombok.eclipse.TransformEclipseAST.transform(TransformEclipseAST.java:183) at lombok.eclipse.TransformEclipseAST.transform_swapped(TransformEclipseAST.java:107) at jdk.internal.reflect.GeneratedMethodAccessor46.invoke(Unknown Source) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:568) at lombok.launch.PatchFixesHider$Util.invokeMethod(PatchFixesHider.java:133) at lombok.launch.PatchFixesHider$Transform.transform_swapped(PatchFixesHider.java:256) at org.eclipse.jdt.internal.compiler.parser.Parser.endParse(Parser.java:11465) at org.eclipse.jdt.internal.core.util.CommentRecorderParser.endParse(CommentRecorderParser.java:131) at org.eclipse.jdt.internal.compiler.parser.Parser.parse(Parser.java:12666) at org.eclipse.jdt.internal.compiler.parser.Parser.parse(Parser.java:12896) at org.eclipse.jdt.internal.compiler.parser.Parser.parse(Parser.java:12853) at org.eclipse.jdt.internal.compiler.parser.Parser.dietParse(Parser.java:11236) at org.eclipse.jdt.internal.compiler.Compiler.internalBeginToCompile(Compiler.java:850) at org.eclipse.jdt.internal.compiler.Compiler.beginToCompile(Compiler.java:393) at org.eclipse.jdt.core.dom.CompilationUnitResolver.resolve(CompilationUnitResolver.java:1251) at org.eclipse.jdt.core.dom.CompilationUnitResolver.resolve(CompilationUnitResolver.java:790) at org.eclipse.jdt.core.dom.ASTParser.internalCreateASTCached(ASTParser.java:1242) at org.eclipse.jdt.core.dom.ASTParser.lambda$0(ASTParser.java:1120) at org.eclipse.jdt.internal.core.JavaModelManager.cacheZipFiles(JavaModelManager.java:5839) at org.eclipse.jdt.core.dom.ASTParser.internalCreateAST(ASTParser.java:1120) at org.eclipse.jdt.core.dom.ASTParser.createAST(ASTParser.java:868) at org.eclipse.jdt.internal.junit.launcher.JUnit4TestFinder.internalIsTest(JUnit4TestFinder.java:241) at org.eclipse.jdt.internal.junit.launcher.JUnit4TestFinder.isTest(JUnit4TestFinder.java:209) at org.eclipse.jdt.internal.junit.util.CoreTestSearchEngine.isTestOrTestSuite(CoreTestSearchEngine.java:60) at org.eclipse.jdt.internal.junit.JUnitPropertyTester.isJUnitTest(JUnitPropertyTester.java:122) at org.eclipse.jdt.internal.junit.JUnitPropertyTester.canLaunchAsJUnitTest(JUnitPropertyTester.java:88) at org.eclipse.jdt.internal.junit.JUnitPropertyTester.test(JUnitPropertyTester.java:72) at org.eclipse.core.internal.expressions.Property.test(Property.java:65) at org.eclipse.core.expressions.TestExpression.evaluate(TestExpression.java:107) at org.eclipse.core.expressions.CompositeExpression.evaluateAnd(CompositeExpression.java:54) at org.eclipse.core.expressions.AndExpression.evaluate(AndExpression.java:36) at org.eclipse.core.expressions.CompositeExpression.evaluateAnd(CompositeExpression.java:54) at org.eclipse.core.internal.expressions.AdaptExpression.evaluate(AdaptExpression.java:121) at org.eclipse.core.expressions.CompositeExpression.evaluateAnd(CompositeExpression.java:54) at org.eclipse.core.internal.expressions.IterateExpression.evaluate(IterateExpression.java:163) at org.eclipse.core.expressions.CompositeExpression.evaluateAnd(CompositeExpression.java:54) at org.eclipse.core.expressions.WithExpression.evaluate(WithExpression.java:84) at org.eclipse.core.expressions.CompositeExpression.evaluateAnd(CompositeExpression.java:54) at org.eclipse.core.internal.expressions.EnablementExpression.evaluate(EnablementExpression.java:59) at org.eclipse.debug.internal.ui.launchConfigurations.LaunchShortcutExtension.evalEnablementExpression(LaunchShortcutExtension.java:273) at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationManager.getApplicableConfigurationTypes(LaunchConfigurationManager.java:727) at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationManager.getApplicableLaunchConfigurations(LaunchConfigurationManager.java:765) at org.eclipse.debug.internal.ui.contextlaunching.LaunchingResourceManager.getParticipatingLaunchConfigurations(LaunchingResourceManager.java:519) at org.eclipse.debug.internal.ui.contextlaunching.LaunchingResourceManager.getLabel(LaunchingResourceManager.java:338) at org.eclipse.debug.internal.ui.contextlaunching.LaunchingResourceManager.computeLabels(LaunchingResourceManager.java:258) at org.eclipse.debug.internal.ui.contextlaunching.LaunchingResourceManager$1$1.run(LaunchingResourceManager.java:147) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
Also happens with other annotations (I've found @EqualsAndHashCode and @Getter): !ENTRY org.eclipse.jdt.core 4 0 2024-03-15 16:36:49.766 !MESSAGE Lombok annotation handler class lombok.eclipse.handlers.HandleEqualsAndHashCode failed !STACK 0 java.lang.NoSuchMethodError: 'java.lang.StringBuffer org.eclipse.jdt.internal.compiler.ast.Expression.print(int, java.lang.StringBuffer)' and the problem started today with the update of Eclipse, also.
The cause is Lombok has not yet relased a compatible version with Eclipse 2024-03: https://github.com/projectlombok/lombok/issues/3620
lombok 1.18.32 can be downloaded and used