VS2017中NuGet无法还原Microsoft.Net.Compilers.1.0.0问题求助
解决Microsoft.Net.Compilers.1.0.0还原后缺失的问题
我之前也碰到过一模一样的情况,折腾了好一会儿才搞定,给你几个亲测有效的排查和修复步骤:
清理NuGet缓存后重新安装
缓存损坏是这类问题的常见元凶,你可以这么操作:- 打开Visual Studio 2017,点击顶部菜单栏的「工具」→「选项」→「NuGet包管理器」→「常规」
- 点击「清空NuGet缓存」按钮,等清理完成后关闭选项窗口
- 右键你的项目,选择「管理NuGet程序包」,找到Microsoft.Net.Compilers.1.0.0,先点击「卸载」,卸载完成后再重新点击「安装」
检查NuGet全局包路径
有时候包其实已经还原成功了,只是不在你项目本地的packages文件夹里,而是存放在全局包目录:- 同样在「NuGet包管理器」→「程序包源」里,查看「全局包」对应的路径(一般是
C:\Users\[你的用户名]\.nuget\packages) - 导航到这个路径,看看有没有
microsoft.net.compilers\1.0.0文件夹 - 如果存在的话,右键项目选择「卸载项目」,然后重新加载项目,VS应该能自动识别到这个全局包,错误就会消失
- 同样在「NuGet包管理器」→「程序包源」里,查看「全局包」对应的路径(一般是
手动下载并放置包到本地packages文件夹
如果上面两种方法都没效果,试试手动操作:- 去NuGet官方平台搜索Microsoft.Net.Compilers.1.0.0,下载对应的
.nupkg包文件 - 把
.nupkg后缀改成.zip,解压后将文件夹重命名为Microsoft.Net.Compilers.1.0.0 - 把这个文件夹放到你项目根目录的
packages文件夹里 - 回到VS重新生成项目,应该就能解决缺失的报错
- 去NuGet官方平台搜索Microsoft.Net.Compilers.1.0.0,下载对应的
检查项目文件的包引用配置
偶尔项目文件里的引用路径会出问题,你可以检查一下:- 右键项目选择「卸载项目」,然后右键点击项目选择「编辑[项目名称].csproj」
- 在文件里搜索包含
Microsoft.Net.Compilers的节点,比如<PackageReference>或者旧的<Reference> - 确认节点里的路径是否指向正确的包位置,如果不对就手动修正,保存后重新加载项目
内容的提问来源于stack exchange,提问作者LP13
相关产品推荐
相关产品推荐

