I tried a few different quick-fix solutions, and none of them worked for me. I finally realized that there was a better way to debug this myself:
1. Open the Output panel in VSCode ("View -> Output" from the top menu)
2. Select "OmniSharp Log" from the drop-down in the top right of the Output panel
The problems were MUCH easier to debug once I could see the problems OmniSharp was having just trying to start up. Here were the problems on my Mac:
- Somehow, the option "Omnisharp: Use Modern Net" was set to true. This is not supported by the Unity integration, so I had to unset it.
- Even though `dotnet` was on my path, VSCode couldn't find it. I ran `which dotnet` in a terminal to find the path to the `dotnet` executable, and set the "Omnisharp: Dotnet Path" setting to that path.
- Even though `mono` was on my path, VSCode couldn't find it. I ran `which mono` in a terminal to find the path to the `mono` executable, and set the "Omnisharp: Mono Path" setting to that path.
I tried a few different quick-fix solutions, and none of them worked for me. I finally realized that there was a better way to debug this myself:
1. Open the Output panel in VSCode ("View -> Output" from the top menu)
2. Select "OmniSharp Log" from the drop-down in the top right of the Output panel
The problems were MUCH easier to debug once I could see the problems OmniSharp was having just trying to start up. Here were the problems on my Mac:
- Somehow, the option "Omnisharp: Use Modern Net" was set to true. This is not supported by the Unity integration, so I had to unset it.
- Even though `dotnet` was on my path, VSCode couldn't find it. I ran `which dotnet` in a terminal to find the path to the `dotnet` executable, and set the "Omnisharp: Dotnet Path" setting to that path.
- Even though `mono` was on my path, VSCode couldn't find it. I ran `which mono` in a terminal to find the path to the `mono` executable, and set the "Omnisharp: Mono Path" setting to that path.