You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu下Unity开发VS Code弹出OmniSharp依赖Mono完整安装错误求助

OmniSharp提示缺少完整Mono安装的解决方案(Ubuntu 22.04 + Unity)

问题背景

在Ubuntu 22.04.1 LTS(64位,GNOME 42.4)环境下,使用Unity 2021.3.13f1搭配VS Code开发游戏,此前一切正常。安装并卸载LXDE桌面环境后,每次打开项目都会弹出以下错误:

OmniSharp requires a complete install of Mono (including MSBuild) to provide languages services when omnisharp.useModernNet is disabled in Settings. Please install the latest Mono and restart.

已安装工具及版本:

  • VS Code C#扩展
  • .NET SDK 6.0.110
  • Mono 6.12.0.182
  • MSBuild 17.0.0 for Mono

当前VS Code相关配置:

"omnisharp.path": "latest",
"omnisharp.useModernNet": false,
"omnisharp.monoPath": "/usr/bin/mono"

解决步骤

1. 修复MSBuild与Mono的关联

卸载LXDE可能破坏了系统中MSBuild与Mono的关联,通过以下命令重新选择正确的MSBuild版本:

sudo update-alternatives --config msbuild

在弹出的选项中,选择路径包含/usr/lib/mono/msbuild的版本(对应Mono配套的MSBuild)。

2. 重新安装完整的Mono包

现有Mono安装可能因桌面环境切换导致文件缺失或损坏,卸载后重新安装官方完整包:

# 卸载现有Mono及相关组件
sudo apt purge --auto-remove mono-runtime mono-devel msbuild

# 添加Mono官方软件源
sudo apt install apt-transport-https dirmngr
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF
echo "deb https://download.mono-project.com/repo/ubuntu stable-jammy main" | sudo tee /etc/apt/sources.list.d/mono-official-stable.list

# 更新源并安装完整Mono包
sudo apt update
sudo apt install mono-complete msbuild

3. 清除OmniSharp缓存并重置扩展

VS Code的OmniSharp缓存可能残留旧配置,导致识别异常:

  1. 完全关闭VS Code
  2. 执行以下命令删除缓存目录:
    rm -rf ~/.vscode/extensions/ms-dotnettools.csharp-*/.omnisharp
    rm -rf ~/.cache/OmniSharp
    
  3. 重新打开VS Code,等待OmniSharp完成初始化

4. 切换至ModernNet模式(Unity 2021+推荐)

Unity 2021.3版本已支持.NET 6,可尝试启用ModernNet模式,绕过Mono依赖问题:
修改VS Code的settings.json:

"omnisharp.useModernNet": true,
"omnisharp.path": "latest"

删除omnisharp.monoPath配置项,让OmniSharp自动使用系统中的.NET SDK。

5. 验证环境变量配置

确保Mono和MSBuild的路径已加入系统环境变量:

echo $PATH | grep -E "/usr/bin/mono|/usr/lib/mono/msbuild"

如果输出为空,将路径添加到Shell配置文件(如~/.bashrc或~/.zshrc):

echo 'export PATH="$PATH:/usr/bin/mono:/usr/lib/mono/msbuild/17.0/bin"' >> ~/.bashrc
source ~/.bashrc

内容的提问来源于stack exchange,提问作者Salah Rashad

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 23:45:35