繁体   English   中英

Visual Studio 应用程序中的解决方案中缺少某些 NuGet 包

[英]Some NuGet packages are missing from the solution in Visual Studio Application

在提取一些代码更新后,我发现我在构建时收到了这条消息。

Some NuGet packages are missing from the solution. 
The packages need to be restored in order to build the dependency graph. 
Restore the packages before performing any operations

在解决方案资源管理器中,参考链接显示缺少参考图标

我删除了引用然后在包管理器控制台上出现一个按钮,询问我是否要安装丢失的包。 然而,这并没有奏效。

我正在写这个答案,因为我尝试了以下解决方案,但都没有奏效:

  1. 清除缓存
  2. 恢复或重新安装软件包
  3. 改变目标框架
  4. 更新 Nuget 包管理器

然后我查看了一个下拉列表,看起来这个错误是微不足道的。 包源下线!! 我在我的系统上安装了 VS2017 Professional 并打开一个现有项目,发现缺少多个包。 我尽我所能,没有查看包源!

管理解决方案的 Nuget 包


解决方案

步骤 01。转到包管理器设置(工具 > Nuget 包管理器 > 包管理器设置) Nuget 包管理器 > 包管理器设置

步骤 02 检查包源。 可以看到,包源在这里已经下载了 SDK/nugets/packages。 我不知道原因,但是我的 Visual Studio 系统安装中缺少来自 nuget.org 的在线包源。

在此处输入图片说明

步骤 03. 安装 nuget.org 作为包源,然后“清除所有 Nuget 缓存”,然后恢复包。 错误将消失。

名称:nuget.org(或如您所愿)来源: https ://api.nuget.org/v3/index.json

在此处输入图片说明

当我尝试在解决方案之外单独打开项目并对其进行构建时,我收到了消息。

需要还原一个或多个 NuGet 包,但无法还原,因为尚未授予同意。 要表示同意,请打开 Visual Studio 选项对话框,单击包管理器节点并选中“允许 NuGet 在构建期间下载丢失的包”。 您还可以通过将环境变量“EnableNuGetPackageRestore”设置为“true”来表示同意。

我授予 VS 权限,然后我在包管理器控制台上运行

update-package -Reinstall  

第一次下载时文件夹/zips 内容可能出错,因此请转到 Xamarin 文件夹( C:/User/YourName/AppData/Local/Xamarin )并删除或重命名或移出丢失的 nuget 文件夹或内容 zips 文件夹.

重启IDE,你的IDE再次下载内容。 我试过这个,它的工作原理。

单击 Ctrl+Q 并输入缺失包的名称,然后单击搜索在线 NuGet 包匹配。 它将显示单击浏览的菜单,这将为您提供缺少的软件包,单击安装、卸载或更新。 在此处输入图片说明

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM