如何解决 Visual Studio (MSBuild) 错误消息:
恢复 NuGet 包时发生错误:“恢复输入无效。未指定目标框架。”
警告: 如果没有 Visual Studio,您似乎无法使用 JetBrains Rider IDE!
如果您还没有安装 Microsoft 的 Visual Studio 以及处理您的项目的相关附加库(例如 Xamarin),则 Rider IDE 可能会出现此问题。
安装 Rider + .NET Framework + MSbuild 可能不足以解决问题。
也许这是显而易见的,但并不适合所有人,尤其是刚接触 .NET 编码的开发人员。
该问题是由于
.sln
文件中指定的项目类型错误引起的。在解决方案文件中,项目的类型为 {D954291E-2A0B-460D-934E-DC6B0785DB48}
(共享项目/Windows 应用商店应用程序通用)。
...
Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "SomeProject", "SomeProject", "{...}"
...
但实际上该项目是C#(SDK项目)。通过将解决方案文件中的 GUID/UUID 更改为正确的 GUID/UUID 解决了该问题,即
{9A19103F-16F7-4668-BE54-9A1E7A4F7556}
。
...
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SomeProject", "SomeProject", "{...}"
...
当我打开解决方案时,我的计算机崩溃了,这发生在我身上。当我再次打开它时,什么也不会建立。前面提到的解决方案都不起作用。这是所做的:
.vs
隐藏文件夹我正在使用 VS 17。
我最近在一个构建针对多个框架的 NuGet 包的项目中遇到了这个错误。
简而言之,我的
.csproj
文件中有这个(大概是 git merge 错误):
<TargetFrameworks>netstandard2.1;net462;net48;net48</TargetFrameworks>
注意
net48
的重复条目。奇怪的是,它仍然构建在我的机器上(大概是因为某些东西缓存在磁盘上的某个地方)。一旦我删除了重复的条目,一切就又开始工作了。
在我的例子中,.gitignore 文件忽略了 Directory.Build 和 Directory.Build。离开公司的另一位队友已从旧项目复制了文件。