Vs 中关于项目中的某 NuGet 程序包还原失败:找不到“xxx”版本的程序包“xxx”
问题:
首先出现这个bug的是在我的vs2017社区版的ide上,这两天使用了出现了一个非常神奇的问题,就是我程序中的nuget包总提示找不到源文件,并且我点击Nuget还原的话还一直提示着一个问题。
严重性 代码 说明 项目 文件 行 禁止显示状态
错误 项目 JJHL.WEB 的 NuGet 包还原失败: 找不到“11.0.2”版本的程序包“Newtonsoft.Json”。
C:\Program Files (x86)\Microsoft SDKs\NuGetPackages\: 在源“C:\Program Files (x86)\Microsoft SDKs\NuGetPackages\”上找不到包“Newtonsoft.Json.11.0.2”。
。请查看“错误列表”窗口了解详细警告和错误。
从这里我发现了我的nuget找不到对应的源文夹的话,它只会前往我的c盘下的,C:\Program Files (x86)\Microsoft SDKs\NuGetPackages\ 这个位置找相应的源包,然而我这个项目统一升级过的使用svn中央版本控制器空控制的源码,出现这个问题的原因可能是我的同事使用了更加高版本的 Nettonsoft.json 程序包,而我的电脑c盘这个地方恰好又不存在,所以导致了这个原因。
解决方法:
修改NuGet包管理器的源为 http://www.nuget.org/api/v2/
第一步:
单击工具>选择NuGet管理器>程序包管理器设置
第二步:
选择NuGet包管理器>程序包源>添加获取包源位置(http://www.nuget.org/api/v2/)名称可随意
最后再重启vs,然后在点击NuGet还原就好了。
总结:遇到问题不可怕,学会细心的发现问题的根源,总能够解决的。