nuget - 迁移的 Visual Studio 项目未找到 NuGet 包
问题描述
我正在将 MVC ASP.NET Visual Studio 2010 项目迁移到 Visual Studio 2019。
Visual Studio 2010 项目使用了一些旧的 jQuery NuGet 包,由于时间限制以及整个项目中不适合我当前范围的大量更改,我无法将它们更新为当前包。
迁移的 2019 年项目显示了许多与 NuGet 包相关的错误:
NuGet Package restore failed for project MyWebProject: Unable to find version '3.2.0' of package 'Microsoft.jQuery.Unobtrusive.Ajax'.
C:\Program Files (x86)\Microsoft SDKs\NuGetPackages\: Package 'Microsoft.jQuery.Unobtrusive.Ajax.3.2.0' is not found on source 'C:\Program Files (x86)\Microsoft SDKs\NuGetPackages\'.
Please see Error List window for detailed warnings and errors.
NuGet Package restore failed for project MyWebProject: Unable to find version '2.1.1' of package 'jQuery'.
C:\Program Files (x86)\Microsoft SDKs\NuGetPackages\: Package 'jQuery.2.1.1' is not found on source 'C:\Program Files (x86)\Microsoft SDKs\NuGetPackages\'.
Please see Error List window for detailed warnings and errors.
...
...
...
在 Visual Studio 2019 项目中,当我查看 NuGet Installed 包时,我看到列出的包但带有消息Not available in this source
根据错误消息,Visual Studio 正在C:\Program Files(x86)\Microsoft SDKs\NuGetPackages中寻找包;但是它应该在一个名为“packages”的目录中查找实际包含这些包的目录。
我已将包目录与项目放在同一目录中(但最好将它们放在公共资源目录中,以便团队在/如果他们正在处理此项目时可以找到它们)。我还编辑了packages 目录中的repositories.config文件以指向项目的packages.config文件。
如果需要,我可以将所有这些恢复为默认值。
我所做的一切都没有帮助我解决这个问题。
如何指示 Visual Studio 2019 使用存在于不是 Program Files 目录的目录中的包?
谢谢
解决方案
如何指示 Visual Studio 2019 使用存在于不是 Program Files 目录的目录中的包?
根据您的错误消息:请Tools=>Options=>Nuget Package Manager
检查您的包源设置。
也许你还没有检查 nuget.org 作为你的包源。请检查以下设置:
在 VS 中,当您单击该Restore Nuget Packages
选项时,它将搜索包from available sources
。大多数情况下,我们需要恢复的包来自Nuget Gallery。就像JQuery 2.1.1
, 所以默认情况下我们会将 nuget.org 设置为我们必要的包源。
我检查了是否取消选中 nuget.org,然后我遇到了和你一样的问题。
所以,请:
1.检查nuget.org作为您的包源,如果它不存在,只需单击绿色+
创建一个新源并将其源设置为https://api.nuget.org/v3/index.json
2.如果nuget.org存在且检查状态,请确保其链接正确另外:
但是它应该在一个名为“packages”的目录中查找实际包含这些包的目录。
如果packages
您的意思是文件夹位于Solution directory
:在我看来,Restore Nuget Package
这并不意味着,相反,如果.(对于 packages.config 格式)中缺少某些内容searching sources from the packages folder
,它将从中搜索软件包available package sources
并将其安装到packages folder
packages folder
推荐阅读
- javascript - 使用 Firestore 显示简单的博客文章
- jquery - 如何在文本中找到最大日期?
- python - 写入 csv 时跳过第一行 (pandas.DataFrame.to_csv)
- python - 我在哪里将我的 python 文件放在 venv 文件夹中?
- javascript - iOS中的React Video重新渲染问题
- javascript - 用于从表中选择数据的多个复选框
- c# - Howto: Avoid EF creating Id
- python - 从依赖于交互式地图的表中抓取数据
- azure-devops - VSTS - External Git
- javascript - Real time chat using PHP and JS