首页 > 解决方案 > 缺少 Nuget.targets

问题描述

我对 C# 和 Visual Studio 2017 很熟悉。似乎 VS 说 Nuget 包丢失了。当我尝试构建解决方案时,控制台输出以下内容:

“此项目引用此计算机上缺少的 NuGet 包。启用 NuGet 包还原以下载它们。有关详细信息,请参阅http://go.microsoft.com/fwlink/?LinkID=322105。缺少的文件是D:\xxxx\xxxx\桌面\Koodipohjaa\trunk\.nuget\NuGet.targets"

将项目从原始位置复制到桌面(原因)。在 /trunk/ 我有一个名为“packages”的文件夹,但没有“.nuget”文件夹。我已经从解决方案级别尝试了“恢复 nuget 包”,它说没有什么要更新的。当我打开项目的引用时,有一个非常可爱的黄色小三角形,里面有所有的包。

我尝试更新包,将它们全部删除并自动重新安装等。在“nuget 包管理器”中,我尝试了所有可能的包还原。

标签: c#visual-studionugetnuget-package-restore

解决方案


请试试:

1.在VS2017中,进入Tools menu=>Nuget Package Manager=>Package Manager settings,确保你已经勾选了这两个选项:

在此处输入图像描述

2.在解决方案资源管理器中右击项目=> Unload Project=> 右击项目名称Edit the xx.csproj,你会找到EnsureNuGetPackageBuildImports这样一个格式的目标:

<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
    <PropertyGroup>
      <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
    </PropertyGroup>
    <Error Condition="!Exists('..\packages\xxx')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\xxx'))" />
  </Target>

删除目标并保存文件。然后右键单击项目以重新加载项目并运行重建。

我假设您的项目文件(xx.csproj)中可能有这样的目标,它试图找到该nuget.targets文件,删除目标以检查它是否有帮助。类似的问题这里


推荐阅读