在Visual Studio中打开项目失败,因为nuget.targets未find错误

所以我从http://www.twitterizer.net/downloads/下载了Twitterizer

我尝试在Visual Studio中打开它并获取所有这些nuget错误:

The imported project "C:\Twitterizer\.nuget\nuget.targets" was not found. Confirm that the path in the <Import> declaration is correct, and that the file exists on disk. 

到底是怎么回事。 我如何处理这个?

  1. 安装Nuget。
  2. 右键点击解决scheme,然后select“启用NuGet包恢复”。
  3. 在警告上单击确定。
  4. closures并重新打开解决scheme。

现在应该是hunky dory。

另一种方法是使用文本编辑器编辑.csproj文件,并删除或注释该段。

当您尝试直接打开.csproj而不是通过解决scheme文件时,通常会发生此错误,并且.csproj像这样导入Nuget目标:

 <Import Project="$(SolutionDir)\.nuget\NuGet.targets" /> 

为了解决这个问题,你可以直接打开.sln而不是.csproj ,或者删除上面的import行。

请注意,提到的错误只会发生在您使用solution wise包恢复,这甚至不build议了。

当我得到nuget.targets not found错误,我使用软件包pipe理器来uninstall-package之一,然后使用install-package重新安装它。 好像它重新生成了nugets.target文件。

我知道我迟到了,但这是一个非常好的教程,如何解决这个问题。 我用这个来修复我的项目。

closuresVisual Studio如果您尝试迁移的解决scheme在Visual Studio中打开,则更改可能会丢失。 在某些情况下,Visual Studio可能会覆盖/忽略您的更改,并且NuGet扩展也会尝试在解决scheme中的某些项目丢失时重新启用Package Restore。

如果您使用TFS从解决scheme的.nuget文件夹中删除NuGet.exe和NuGet.targets文件。 确保文件本身也从解决scheme工作区中删除。 保留NuGet.Config文件继续绕过添加包到源代码pipe理。 编辑解决scheme中的每个项目文件(例如,.csproj,.vbproj),并删除对NuGet.targets文件的任何引用。 在您select的编辑器中打开项目文件并删除以下设置:

真的……

 <PropertyGroup> <ErrorText>This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download 

他们。 有关更多信息,请参阅http://go.microsoft.com/fwlink/?LinkID=322105 。 缺less的文件是{0}。 如果您不使用TFS从您的解决scheme中删除.nuget文件夹。 确保文件夹本身也从解决scheme工作区中删除。 编辑解决scheme中的每个项目文件(例如,.csproj,.vbproj),并删除对NuGet.targets文件的任何引用。 在您select的编辑器中打开项目文件并删除以下设置:

真的……

 <PropertyGroup> <ErrorText>This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download 

他们。 有关更多信息,请参阅http://go.microsoft.com/fwlink/?LinkID=322105 。 缺less的文件是{0}。 迁移脚本许多用户请求迁移工具来禁用基于MSBuild的软件包还原并转换为自动软件包还原。 NuGet团队已经决定不提供一个支持的工具,因为边缘案例的可能性很高,这些都是未经处理的。 不过,Owen Johnson已经撰写了PowerShell脚本,可以在很多情况下使用。 它在GitHub上提供,可以使用您自担风险。 换句话说,在运行之前一定要提交源代码控制,以防万一它不能在你的场景中运行。

Nuget.target修复

刚刚遇到同样的问题,但在我的情况下,问题是文件夹名称中的空间:

Nuget告诉我找不到“C:\ git \ My Path”,但我可以导航到“C:\ git \ My%20Path”。 删除文件夹名称中的空间“固定”的问题。

在Visual Studio解决scheme资源pipe理器中恢复丢失的NuGet.targets时出现此错误的最容易的解决scheme是:

  1. 右键点击解决scheme文件
  2. 从上下文菜单中点击“ 启用Nuget包还原 …”选项

这将下载“ .nuget ”文件夹中的丢失的文件:)

以上假设你已经安装了Nuget – 如果不遵循上面的接受的答案!

更新:请注意对于2013年以后的Visual Studio版本,该选项被称为“ 恢复NuGet包