Sonar For IDE for PhpStorm doesn't work with code inside WSL

Please provide

  • Operating system: Windows 11
  • SonarQube for IDE plugin version: 12.4.0.84870
  • PhpStorm version: 2026.1.3
  • Programming language you’re coding in: PHP
  • Is connected mode used: Yes
    • SonarQube Server

And a thorough description of the problem / question:

I have Window 11

  • Installed PhpStorm on Window
  • installed WSL2 with Ubuntu instance
    • installed git and clone code inside

When I tried to analysis it throw error in log

 [2026-06-23T10:22:30.654] [sonarlint-analysis-scheduler] ERROR sonarlint - Error during analysis
java.util.concurrent.CompletionException: org.eclipse.lsp4j.jsonrpc.ResponseErrorException: Internal error.
	at java.base/java.util.concurrent.CompletableFuture.wrapInCompletionException(CompletableFuture.java:323)
	at java.base/java.util.concurrent.CompletableFuture.reportJoin(CompletableFuture.java:457)
	at java.base/java.util.concurrent.CompletableFuture.join(CompletableFuture.java:2139)
	at org.sonarsource.sonarlint.core.fs.ClientFileSystemService.getClientFileDtos(ClientFileSystemService.java:130)
	at org.sonarsource.sonarlint.core.fs.ClientFileSystemService.initializeFileSystem(ClientFileSystemService.java:117)
	at org.sonarsource.sonarlint.core.commons.SmartCancelableLoadingCache.lambda$newValueAndScheduleComputation$1(SmartCancelableLoadingCache.java:99)
	at org.sonarsource.sonarlint.core.commons.DebounceComputer.lambda$scheduleComputationAsync$0(DebounceComputer.java:83)
	at java.base/java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1789)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1090)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:614)
	at java.base/java.lang.Thread.run(Thread.java:1474)
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.sonarsource.sonarlint.core.rpc.protocol.SingleThreadedMessageConsumer.lambda$new$0(SingleThreadedMessageConsumer.java:49)
	... 3 more

This is log

sonar-log.txt (101.1 KB)

Hi @hoangnm

Thanks for the logs, they helped a lot. I managed to reproduce a very similar failure on my side: a project living inside WSL, opened in PhpStorm on Windows.

I can’t say for sure what triggers it in your case yet, but my working theory is that it’s related to how the files are accessed over the \wsl.localhost... share, Windows can’t always turn those paths into valid file paths (for example if a file has a name that’s fine on Linux but not on Windows). When that happens, listing the project files fails, so the analysis never starts and you just get the generic “Internal error”.

Either way, a possibly reliable workaround (if the above theory is correct) for now is to not go through the network share at all: open the project using JetBrains’ WSL / remote development backend, so PhpStorm (and our plugin) run inside Ubuntu itself. The paths stay native Linux that way and the problem should go away.

We’ll keep digging on our end to handle this more gracefully. Looking forward to hearing from you whether that worked!

Cheers,
Vasilis