We have recently released a new version of SonarQube for IDE that includes the fixes mentioned above. Could you please give it a try? If your project does not target SDK 10, it should be correctly resolved, and issues should be raised.
In my test project, same as the one attached to this topic, it works if I set the property sonar.cs.internal.msBuildPath with
C:\Program Files\dotnet\sdk\8.0.422
Unfortunately there still cases where it doesn’t work. But I can’t share this project. What I can say it’s that it’s a solution with multiples project that target .NET 8, .NET Framework 4.8, .NET Standard 2.0
I tried to put the same test classes than the attached project in one of the .NET 8 project and the issues are not displayed
Would you be able to share the full Verbose logs from SonarQube for IDE, right from the start?
We now normally take into account the SDK sent by Rider, which is related to the configuration you have in your IDE.
For which case ? For the test project ?
If I correctly understand you, it shouldn’t be necessary to add the sonar.cs.internal.msBuildPath property ?
For which case ? For the test project ?
Yes
If I correctly understand you, it shouldn’t be necessary to add the
sonar.cs.internal.msBuildPathproperty ?
It should not be necessary, SonarQube for IDE should automatically pick-up the SDK configuration set by Rider in your solution.
Here they are
sonarqube_for_ide_logs_20260715.log (71.6 KB)
Thanks. We can see that both fixes that we’ve done are effectively working fine. Rider is passing the following SDK to our plugin:
sonar.cs.internal.msBuildPath=C:\Program Files\dotnet\sdk\10.0.302
Which is crashing OmniSharp due to the limited compatibility with .NET 10:
The project system ‘OmniSharp.MSBuild.ProjectSystem’ threw exception during initialization.
System.NullReferenceException at MSBuildHelpers.GetBuildEnvironmentInfo() line 27
OmniSharp then proceeds to fail fast.
Could you verify that Rider is configured to use the correct SDK?
It works if I force the SDK to .NET 8
My test project on .NET 10 is now working. But my existing production project, which is also on .NET 10, is still throwing up this Omnisharp error.
[2026-07-20T08:33:36.268] [sonarlint-analysis-scheduler] ERROR sonarlint - Error executing sensor: 'OmniSharp'
java.lang.IllegalStateException: Analysis failed: java.lang.IllegalStateException: OmniSharp MSBuild project system is not available
at org.sonarsource.sonarlint.omnisharp.OmnisharpSensor.execute(OmnisharpSensor.java:113)
at org.sonarsource.sonarlint.core.analysis.container.analysis.sensor.SensorsExecutor.lambda$executeSensor$1(SensorsExecutor.java:102)
at org.sonarsource.sonarlint.core.commons.tracing.Trace.startChild(Trace.java:63)
at org.sonarsource.sonarlint.core.analysis.container.analysis.sensor.SensorsExecutor.executeSensor(SensorsExecutor.java:102)
at org.sonarsource.sonarlint.core.analysis.container.analysis.sensor.SensorsExecutor.executeSensors(SensorsExecutor.java:93)
at org.sonarsource.sonarlint.core.analysis.container.analysis.sensor.SensorsExecutor.execute(SensorsExecutor.java:80)
at org.sonarsource.sonarlint.core.analysis.container.analysis.AnalysisContainer.doAfterStart(AnalysisContainer.java:122)
at org.sonarsource.sonarlint.core.commons.tracing.Step.executeTransaction(Step.java:42)
at org.sonarsource.sonarlint.core.commons.tracing.Trace.lambda$startChildren$0(Trace.java:76)
at java.base/java.util.Spliterators$ArraySpliterator.forEachRemaining(Spliterators.java:1024)
at java.base/java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:803)
at org.sonarsource.sonarlint.core.commons.tracing.Trace.startChildren(Trace.java:76)
at org.sonarsource.sonarlint.core.plugin.commons.container.SpringComponentContainer.startComponents(SpringComponentContainer.java:183)
at org.sonarsource.sonarlint.core.plugin.commons.container.SpringComponentContainer.execute(SpringComponentContainer.java:164)
at org.sonarsource.sonarlint.core.analysis.container.module.ModuleContainer.analyze(ModuleContainer.java:77)
at org.sonarsource.sonarlint.core.analysis.command.AnalyzeCommand.doRunAnalysis(AnalyzeCommand.java:198)
at org.sonarsource.sonarlint.core.analysis.command.AnalyzeCommand.doExecute(AnalyzeCommand.java:148)
at org.sonarsource.sonarlint.core.analysis.command.AnalyzeCommand.execute(AnalyzeCommand.java:139)
at org.sonarsource.sonarlint.core.analysis.command.AnalyzeCommand.lambda$execute$0(AnalyzeCommand.java:131)
at org.sonarsource.sonarlint.core.commons.progress.TaskManager.runExistingTask(TaskManager.java:47)
at org.sonarsource.sonarlint.core.analysis.command.AnalyzeCommand.execute(AnalyzeCommand.java:130)
at org.sonarsource.sonarlint.core.analysis.AnalysisScheduler.executeQueuedCommands(AnalysisScheduler.java:81)
at java.base/java.lang.Thread.run(Thread.java:1474)
Caused by: java.lang.IllegalStateException: OmniSharp MSBuild project system is not available
at org.sonarsource.sonarlint.omnisharp.protocol.OmnisharpEndpoints.waitForMsBuildProjectsLoaded(OmnisharpEndpoints.java:122)
at org.sonarsource.sonarlint.omnisharp.OmnisharpServerController.lambda$scheduleProjectsLoadedVerification$1(OmnisharpServerController.java:283)
at java.base/java.util.concurrent.CompletableFuture$AsyncRun.run(CompletableFuture.java:1825)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1090)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:614)
... 1 more
Having the same issue here. Would love a fix for this.
Is there a fix available yet, or any ideas as to what might be causing the problem?
Hi, I think I was able to fix it for dotnet 10 by patching the omnisharp fork we use. Is anyone able to do a quick test?
Hi Georgii, yes I can do a test! How can I help you?
Hi.
- Close all IDE instances
- Download the new binaries from Build (Fork) · SonarSource/omnisharp-roslyn@fd0411b · GitHub
- Go to
.sonarlint\storage\ondemand-plugins\omnisharp-<dotnet-sdk>\<version>\** - Replace the contents of the folder with the contents of
omnisharp-<platform>.zip/omnisharp-<dotnet-sdk>.<zip|tar.gz>/** - Re-launch the IDE
we ship both net6 + platform-specific legacy version (net47/mono), but you only need to replace the one that is actually used to analyze your project (if you have an sdk-style project, most likely it will be net6)
Tested on macOS and it works. Analysis runs and issues are raised, no sonar.cs.internal.msBuildPath workaround needed.
Setup:
- macOS (Apple Silicon), Rider 2026.1
- SonarQube for IDE 11.7.0.86025, connected mode with SonarQube Cloud
- .NET SDK 10.0.301, solution is a
.slnxwith multiple .NET 10 projects
Relevant log lines:
INFO OmnisharpServerController - Using OmniSharp SDK configuration from IDE hint: Sdk:Path=/usr/local/share/dotnet/sdk/10.0.301, Sdk:Version=10.0.301
INFO OmnisharpServerController - OmniSharp successfully started
INFO OmnisharpServerController - Projects successfully loaded
INFO ProgressReport - 7/7 source files have been analyzed
INFO sonarlint - Analysis detected 13 issues and 0 Security Hotspots
Previously this failed at Projects successfully loaded with OmniSharp MSBuild project system is not available. csharpsquid rules (S2326, S4023) now show up in the Findings panel as expected.
One note: that build run only produced omnisharp-linux and omnisharp-windows artifacts, no macOS build. I used omnisharp-net6.0.tar.gz from the linux artifact, which works fine on macOS since the net6 build is framework-dependent.
Thanks for the fix! and hope this helped, if you need any additional info let me know.