问题说明:
The package AWSSDK.Core with version 3.3.17 could not be found in C:\Users\xxx\.nuget\packages\, C:\Program Files (x86)\Microsoft SDKs\UWPNuGetPackages\. Run a NuGet package restore to download the package.
问题描述:
我的项目复制到另一台电脑里,然后在另一台电脑进行编译运行,结果跑不动就报了以上问题的错误....
我扩展了项目里的引用文件夹,发现所有NuGet包都不见了.我企图鼠标右键点击引用打开管理NuGet程序包的页面,搜索之前安装过的程序包,并对这些包中任一一个进行卸载和更新,结果都不行.
问题分析:
这个问题在网上找不到解决的办法,也按照过类似的方法尝试去解决,但无济于事.
此问题最类似的解决方法就是:
首先找到C:\Program Files (x86)\NuGet\Config文件夹下的Config文件.打开并修改Config文件里的配置参数, 修改路径为你指定的文件夹路径.我以为是只要把问题说明中"The package AWSSDK.Core with version 3.3.17 could not be found in C:\Users\xxx\.nuget\packages\,"路径修改为本电脑的路径就可以了(更改电脑的用户名称xxx),结果还是令人失望,没什么作用.这个作用仅仅是更改下载安装包的路径罢了,但问题是我之前安装过的程序包引用不了,基本断定并不是同一个问题.
解决办法:
1.在项目里找到obj文件夹,该文件夹里有两个重要的配置文件,分别为:YYY.csproj.nuget.g.prop和project.assets.json文件,其中YYY是项目的名称.
2.用记事本或其他支持文本格式的软件打开YYY.csproj.nuget.g.prop文件和:project.assets.json,文件内容搜索为你之前在上一台成功运行项目的电脑的用户名,把有关于这个用户名的地方,都通通替换成当前你运行项目出错的电脑用户名.
比如:
在上一台电脑的用户名是Administrator,而现在运行项目出错的电脑用户名为username,
"C:\\Users\\Administrator\\..."替换成"C:\\Users\\username\\..."
总结:
坑人的问题.