eclipse-lsp4e / eclipse-lsp4e/lsp4e
FileSystemWatcherManager crashes with FileSystemNotFoundException when workspace contains non-file URI projects
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:
- Open a workspace containing a project with a non-file URI scheme (e.g. SAP ABAP with semanticfs://)
- Have TM4E Language Pack installed (provides
org.eclipse.tm4e.language_pack.markdown content typewith an LSP4E language server mapping) - Open any .md file using any TextEditor-based editor (including "Open With → Plain Text Editor")
- 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
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- 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