VS Code每次启动都重复下载相同文件,请问该如何解决?
VS Code重复下载Omnisharp等组件解决方案
问题核心原因
通常是扩展的组件校验失败、缓存路径权限异常、版本不匹配或本地组件损坏导致,以下是可直接操作的解决步骤:
具体解决方案
- 方法1:固定C#扩展的适配规则,关闭自动下载校验
打开VS Code设置,搜索omnisharp.downloadAttempts,将数值改为0;再搜索omnisharp.useModernNet,根据你的项目依赖版本固定设置为true(适配.NET 5+项目)或false(适配.NET Core 3.1及更低版本项目),避免扩展每次启动都自动检测版本触发下载。 - 方法2:手动指定本地Omnisharp路径
先手动下载对应版本的Omnisharp压缩包,解压到本地无中文、无特殊字符的路径下,之后在VS Code设置中搜索omnisharp.path,填写你解压后的Omnisharp可执行文件的完整路径,保存后重启VS Code即可,扩展会直接调用本地文件,不会再重复下载。 - 方法3:清除损坏的扩展缓存
关闭VS Code后,打开对应扩展缓存目录:- Windows路径:
%USERPROFILE%\.vscode\extensions\ms-dotnettools.csharp-* - macOS路径:
~/.vscode/extensions/ms-dotnettools.csharp-* - Linux路径:
~/.vscode/extensions/ms-dotnettools.csharp-*
删除上述路径下的.omnisharp文件夹,重启VS Code后让扩展完整下载一次Omnisharp,后续就不会重复触发下载了。
- Windows路径:
- 方法4:排查权限与拦截问题
确认你的VS Code扩展安装路径、用户目录没有开启只读权限,也没有被杀毒软件、防火墙拦截写入操作,避免组件下载后无法正常写入缓存导致每次启动都重新校验下载。
临时应急方案
如果上述方法暂时无法生效,可在每次启动VS Code后,点击右下角下载提示的取消按钮,只要本地存在对应版本的Omnisharp文件,取消后扩展也会自动调用本地文件正常工作。
内容的提问来源于stack exchange,提问作者Achraf Nour
相关产品推荐
相关产品推荐

