Closed
Description
On a fresh installation of STS,
Version: 4.26.0.RELEASE
Build Id: 202410162246
on Windows 11 and Java 23, I created an empty workspace with an otherwise empty demo Spring Boot project using Spring Initializr. When I run ANY Rewrite-provided refactoring, e.g. "Update to Java 17", I get a failure.
Sample
java.lang.reflect.InvocationTargetException
at org.springframework.tooling.boot.ls.commands.RewriteRefactoringsHandler.lambda$3(RewriteRefactoringsHandler.java:114)
at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:124)
Caused by: java.util.concurrent.ExecutionException: org.eclipse.lsp4j.jsonrpc.ResponseErrorException: Internal error.
at java.base/java.util.concurrent.CompletableFuture.wrapInExecutionException(CompletableFuture.java:345)
at java.base/java.util.concurrent.CompletableFuture.reportGet(CompletableFuture.java:440)
at java.base/java.util.concurrent.CompletableFuture.get(CompletableFuture.java:2117)
at org.springframework.tooling.boot.ls.commands.RewriteRefactoringsHandler.lambda$3(RewriteRefactoringsHandler.java:112)
... 1 more
Caused by: org.eclipse.lsp4j.jsonrpc.ResponseErrorException: Internal error.
at org.eclipse.lsp4j.jsonrpc.RemoteEndpoint.handleResponse(RemoteEndpoint.java:220)
at org.eclipse.lsp4j.jsonrpc.RemoteEndpoint.consume(RemoteEndpoint.java:204)
at org.eclipse.lsp4e.LanguageServerWrapper.lambda$3(LanguageServerWrapper.java:318)
at org.eclipse.lsp4j.jsonrpc.json.StreamMessageProducer.handleMessage(StreamMessageProducer.java:185)
at org.eclipse.lsp4j.jsonrpc.json.StreamMessageProducer.listen(StreamMessageProducer.java:97)
at org.eclipse.lsp4j.jsonrpc.json.ConcurrentMessageProcessor.run(ConcurrentMessageProcessor.java:114)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572)
[...]
The raw Language Server exception:
[2024-11-13T12:28:15.935529800+01:00] LANGUAGE_SERVER_TO_LSP4E org.eclipse.languageserver.languages.springboot:
{"jsonrpc":"2.0","id":"20","error":{"code":-32603,"message":"Internal error.","data":"java.util.concurrent.CompletionException: java.lang.NoClassDefFoundError: org/opentest4j/TestAbortedException [...]"}}
Extracted the exception:
java.util.concurrent.CompletionException: java.lang.NoClassDefFoundError: org/opentest4j/TestAbortedException
at java.base/java.util.concurrent.CompletableFuture.wrapInCompletionException(CompletableFuture.java:323)
[...]
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:189)
Caused by: java.lang.NoClassDefFoundError: org/opentest4j/TestAbortedException
at org.springframework.ide.vscode.commons.rewrite.gradle.GradleIJavaProjectParser.parseBuildFiles(GradleIJavaProjectParser.java:71)
at org.springframework.ide.vscode.commons.rewrite.java.ProjectParser.parse(ProjectParser.java:45)
at org.springframework.ide.vscode.boot.java.rewrite.RewriteRecipeRepository.lambda$apply$25(RewriteRecipeRepository.java:405)
at java.base/java.util.concurrent.CompletableFuture$UniCompose.tryFire(CompletableFuture.java:1194)
... 7 more
Caused by: java.lang.ClassNotFoundException: org.opentest4j.TestAbortedException
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:528)
... 11 more