diff --git a/headless-services/spring-boot-language-server/src/main/java/org/springframework/ide/vscode/boot/java/rewrite/RewriteRefactorings.java b/headless-services/spring-boot-language-server/src/main/java/org/springframework/ide/vscode/boot/java/rewrite/RewriteRefactorings.java index 2ff0a12ad..0ac09d359 100644 --- a/headless-services/spring-boot-language-server/src/main/java/org/springframework/ide/vscode/boot/java/rewrite/RewriteRefactorings.java +++ b/headless-services/spring-boot-language-server/src/main/java/org/springframework/ide/vscode/boot/java/rewrite/RewriteRefactorings.java @@ -113,7 +113,7 @@ public class RewriteRefactorings implements CodeActionResolver, QuickfixHandler private WorkspaceEdit applyRecipe(Recipe r, IJavaProject project, List cus) { List results = r.run(cus); List> edits = results.stream().filter(res -> res.getAfter() != null).map(res -> { - URI docUri = project.getLocationUri().resolve(res.getAfter().getSourcePath().toString()); + URI docUri = res.getAfter().getSourcePath().isAbsolute() ? res.getAfter().getSourcePath().toUri() : project.getLocationUri().resolve(res.getAfter().getSourcePath().toString()); TextDocument doc = documents.getLatestSnapshot(docUri.toString()); if (doc == null) { doc = new TextDocument(docUri.toString(), LanguageId.JAVA, 0, res.getBefore() == null ? "" : res.getBefore().printAll());