我刚刚升级到 Visual Studio 2019 版本 16.5.0 Preview 2.0。它似乎破坏了使用 dotnet
命令行工具在 F# 中构建和运行 .NET Core 项目的过程。
以前 dotnet build
和 dotnet run
工作正常。现在任何一个都会产生此错误消息(为了可读性而包装):
C:\Program Files\dotnet\sdk\3.1.200-preview-014883\NuGet.targets(124,5):
error : '{{FSharpCoreShippedPackageVersion}}' is not a valid version string.
我的项目在我可以看到的任何地方(包括.fsproj文件中)都没有字符串
FSharpCoreShippedPackageVersion
。我还查看了引用的 NuGet.targets 文件,也找不到 FSharpCoreShippedPackageVersion
。使用
dotnet new console --language=F#
也失败,告诉我恢复 NuGet 包,但尝试 dotnet restore
会给出相同的错误消息。我能做些什么来解决这个问题?
最佳答案
更新 :此问题似乎在当前版本的预览中已修复:3.1.200-preview-014977
如果更新 Visual Studio 2019 预览版,则不再需要此解决方法。
我找到了一个解决方法:
dotnet new globaljson
3.1.200-preview-014883
。 看来是 VS 2019 Version 16.5.0 Preview 2.0 和 .NET Core
3.1.200-preview-014883
的组合导致了这个问题。