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

Ubuntu下VS Code打开Unity项目遇/Debug/目录权限拒绝问题

解决Ubuntu下VS Code加载Unity项目时OmniSharp权限拒绝问题

这个问题的核心原因很明确:Unity生成的.csproj项目文件里,把编译输出路径设置成了系统根目录的/Debug/,而Ubuntu下普通用户没有权限直接在根目录创建文件夹,所以OmniSharp尝试写入时被拒绝了。下面是一步步的解决方法:

1. 手动修复.csproj文件的路径配置

先打开你项目里的Assembly-CSharp.csproj(以及其他相关的.csproj文件),查找类似下面的配置行:

<OutputPath>/Debug/</OutputPath>
<IntermediateOutputPath>/Debug/</IntermediateOutputPath>

把它们改成项目相对路径,比如:

<OutputPath>bin/Debug/</OutputPath>
<IntermediateOutputPath>obj/Debug/</IntermediateOutputPath>

保存文件后,回到VS Code重新加载项目,看看是否能正常加载。

2. 让Unity自动生成正确的项目文件

手动改完后,最好让Unity重新生成项目文件,避免后续再出现同样的问题:

  • 打开Unity编辑器,点击顶部菜单的Edit > Preferences
  • 切换到External Tools标签页
  • 确认Generate .csproj files for:选项下的相关项目都已勾选(比如Assembly-CSharp)
  • 点击Regenerate project files按钮,Unity会重新生成适配Linux环境的项目文件

3. 配置OmniSharp使用系统Mono(可选)

如果上面的步骤还没解决,可以检查VS Code里OmniSharp的配置,确保它正确调用系统安装的Mono:

  • 打开VS Code的设置(快捷键Ctrl+,)
  • 搜索omnisharp.useGlobalMono,设置为always
  • 搜索omnisharp.path,设置为latest确保使用最新版本的OmniSharp

另外,你之前尝试重装.NET SDK、Mono和VS Code没解决问题,是因为问题根本不在这些工具的安装上,而是项目文件的路径配置错误导致的权限问题,所以针对性修改路径就可以解决。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.14 07:17:32