eclipse-lsp4e / eclipse-lsp4e/lsp4e

FileSystemWatcherManager crashes with FileSystemNotFoundException when workspace contains non-file URI projects

Open Beginner friendly
#1,529 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Java
Stars
85
Forks
69
Avg merge
8h 33m
Merged PRs (30d)
6

Description

Environment:
  • LSP4E version: (0.19.7)
  • Eclipse: 2025-03
  • OS: Windows
Description:

When a workspace contains a project with a non-file URI scheme (e.g. SAP ABAP projects using semanticfs://), opening any file that is mapped to a language server via contentTypeMapping (e.g. a .md file matched by TM4E Language Pack's markdown content type) causes an unhandled FileSystemNotFoundException.

The error is thrown from FileSystemWatcherManager's constructor

Stack Trace:

org.eclipse.e4.core.di.InjectionException: java.nio.file.FileSystemNotFoundException: Provider "semanticfs" not installed
    at org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:68)
    ...
Caused by: java.nio.file.FileSystemNotFoundException: Provider "semanticfs" not installed
    at java.base/java.nio.file.Path.of(Path.java:213)
    at java.base/java.nio.file.Paths.get(Paths.java:98)
    at org.eclipse.lsp4e.internal.files.FileSystemWatcherManager.<init>(FileSystemWatcherManager.java:57)
    at org.eclipse.lsp4e.LanguageServerWrapper.<init>(LanguageServerWrapper.java:328)
    at org.eclipse.lsp4e.LanguageServiceAccessor.getLSWrappers(LanguageServiceAccessor.java:339)
    at org.eclipse.lsp4e.LanguageServers$LanguageServerDocumentExecutor.getServers(LanguageServers.java:289)
    at org.eclipse.lsp4e.internal.LSPDocumentAbstractHandler$LanguageServerDocumentHandlerExecutor.anyMatching(LSPDocumentAbstractHandler.java:59)
    at org.eclipse.lsp4e.internal.LSPDocumentAbstractHandler.setEnabled(LSPDocumentAbstractHandler.java:123)
    at org.eclipse.lsp4e.operations.rename.LSPRenameHandler.setEnabled(LSPRenameHandler.java:79)
Steps to Reproduce:
  1. Open a workspace containing a project with a non-file URI scheme (e.g. SAP ABAP with semanticfs://)
  2. Have TM4E Language Pack installed (provides org.eclipse.tm4e.language_pack.markdown content type with an LSP4E language server mapping)
  3. Open any .md file using any TextEditor-based editor (including "Open With → Plain Text Editor")
  4. FileSystemNotFoundException appears in the Error Log

We're hitting this in our plugin because we need to open .md files in workspaces that contain SAP ABAP projects (semanticfs://). Would it be possible to add a scheme check in FileSystemWatcherManager to skip non-file schema projects?

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start in FileSystemWatcherManager.java at the constructor location identified in the stack trace, and reproduce the failure using a workspace containing a semanticfs:// project while opening a mapped .md file. Verify that projects with non-file URI schemes no longer trigger FileSystemNotFoundException and that the file can be opened without an Error Log failure.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
devtools
Issue type
Bug
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Quiet
Clarity
Clearly specified
Newbie friendliness
76/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.