Visual studio 由于找不到nuget.targets错误,在Visual Studio中打开项目失败
所以我从 我尝试在Visual Studio中打开它并获得所有这些nuget错误:Visual studio 由于找不到nuget.targets错误,在Visual Studio中打开项目失败,visual-studio,nuget,twitterizer,Visual Studio,Nuget,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. 未找到导入的项目“C:\Twitterizer\.nuge
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.
未找到导入的项目“C:\Twitterizer\.nuget\nuget.targets”。
确认声明中的路径正确,并且文件
存在于磁盘上。
发生了什么事。我该怎么处理
现在应该很好了。另一种方法是使用文本编辑器编辑.csproj文件并删除或注释掉该段。当我得到
nuget.targets not found
错误时,我使用包管理器卸载项目中的一个包
,然后使用安装软件包
。然后,它似乎会重新生成nugets.target文件。在Visual Studio解决方案资源管理器中,为了还原丢失的NuGet.targets,出现此错误时最简单的解决方案是:
在解决方案文件上单击鼠标右键
从关联菜单中单击“启用Nuget软件包还原”…”选项
这将下载“.nuget
”文件夹中缺少的文件:)
以上假设您已经安装了Nuget-如果没有安装,请按照上面接受的答案操作
更新:
请注意,对于2013年以后的Visual Studio版本,此选项称为“还原NuGet软件包”此错误通常发生在您尝试直接打开.csproj
时,而不是通过解决方案文件,并且.csproj
导入NuGet目标时,如下所示:
<Import Project="$(SolutionDir)\.nuget\NuGet.targets" />
要解决此问题,您可以直接打开.sln
而不是.csproj
,或者删除上面的导入
行
请注意,仅当您使用解决方案智能
软件包还原时,才会发生上述错误,这已不再推荐使用。我知道我参加聚会迟到了,但这里有一个关于如何解决此问题的非常好的教程。我用这个来修复我的项目
如果您尝试迁移的解决方案无效,请关闭Visual Studio
在Visual Studio中打开,则更改可能会丢失。Visual Studio可能
在某些情况下覆盖/忽略您的更改以及NuGet扩展
当看到一些项目时,还将尝试重新启用包还原
在解决方案中,我们缺少它
如果使用TFS,请从中删除NuGet.exe和NuGet.targets文件
解决方案的.nuget文件夹。请确保文件本身也被删除
已从解决方案工作区中删除。将NuGet.Config文件保留到
继续绕过将包添加到源代码管理。编辑每个
在解决方案中创建项目文件(例如.csproj、.vbproj),并删除任何
对NuGet.targets文件的引用。在中打开项目文件
选择编辑器并删除以下设置:
是的
<PropertyGroup>
<ErrorText>This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download
<PropertyGroup>
<ErrorText>This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download
此项目引用此计算机上缺少的NuGet包。启用NuGet包还原以下载
他们。有关详细信息,请参阅
. 丢失的文件是
{0}.
如果你不是
使用TFS从解决方案中删除.nuget文件夹。确保
文件夹本身也将从解决方案工作区中删除。编辑每个
在解决方案中创建项目文件(例如.csproj、.vbproj),并删除任何
对NuGet.targets文件的引用。在中打开项目文件
选择编辑器并删除以下设置:
是的
<PropertyGroup>
<ErrorText>This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download
<PropertyGroup>
<ErrorText>This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download
此项目引用此计算机上缺少的NuGet包。启用NuGet包还原以下载
他们。有关详细信息,请参阅
. 丢失的文件是
{0}.
迁移脚本
许多用户已请求使用迁移工具来禁用
基于MSBuild的包还原并转换为自动包
恢复NuGet团队决定不提供受支持的工具
这是因为边缘情况的高概率
未处理。然而,欧文·约翰逊(Owen Johnson)编写了一个PowerShell脚本
在许多情况下都可以工作。它在GitHub上可用,可以在
你自己的风险。换句话说,一定要致力于源代码管理
在运行它之前,以防它在您的场景中不起作用
刚刚遇到同样的问题,但在我的情况下,问题是文件夹名称中有一个空格:
Nuget告诉我它找不到“C:\git\My Path”,但我可以导航到“C:\git\My%20Path”。删除foldername中的空格“修复”了此问题。要扩展此案例-如果您将项目从具有显式.nuget\nuget.targets文件的解决方案移动到新的解决方案,您将看到此问题(即使在还原nuget包之后),要么创建nuget.targets,要么手动编辑项目文件。我也应用了这个解决方案,因为我的项目使用了非nuget包,而VS似乎自动生成了这个东西。感谢上天的版本控制,它使得从.csproj中删除添加的行成为可能。必须删除哪个段?感谢这一点,如果他们在VS中为此提供了更有用的错误消息,那就太好了。我仍然会收到这个错误,尽管这不再适用于nuget 2.7。您需要在@Slapout中进行解决(对原始问题的评论)这里仍然不起作用,它说没有更多的依赖项要还原。我已经删除了包文件夹并还原了几次:(请注意,以防其他人遇到此问题。Nuget 2.7引入了一种新的包还原类型。如果您尝试将使用旧样式的项目添加到使用ne的解决方案中