【发布时间】:2019-09-10 00:00:34
【问题描述】:
我正在尝试在 VS2019 中构建一个 VS2010 项目。我也在 VS2017 中收到此错误消息。
该项目将无法构建,因为它似乎无法将 MSbuild 4.0 识别为有效。
这是错误:
The "GetReferenceNearestTargetFrameworkTask" task failed unexpectedly.
System.ArgumentException: Invalid framework version 'V4.0'.
at NuGet.Frameworks.NuGetFramework.ParseFrameworkName(String frameworkName, IFrameworkNameProvider mappings)
at NuGet.Frameworks.NuGetFramework.Parse(String folderName, IFrameworkNameProvider mappings)
at
NuGet.Build.Tasks.GetReferenceNearestTargetFrameworkTask.TryParseFramework(String framework, String errorMessage, MSBuildLogger logger, NuGetFramework& nugetFramework)
这是失败的任务:
<GetReferenceNearestTargetFrameworkTask AnnotatedProjectReferences="@(_ProjectReferenceTargetFrameworkPossibilities)"
CurrentProjectTargetFramework="$(ReferringTargetFrameworkForProjectReferences)"
CurrentProjectName="$(MSBuildProjectName)"
FallbackTargetFrameworks="$(AssetTargetFallback)"
Condition="'@(_ProjectReferenceTargetFrameworkPossibilities->Count())' != '0' and '$(ReferringTargetFrameworkForProjectReferences)' != ''">
<Output ItemName="AnnotatedProjects" TaskParameter="AssignedProjects" />
</GetReferenceNearestTargetFrameworkTask>
【问题讨论】:
-
编辑构建失败项目的项目文件,将
<TargetFrameworkVersion>属性从V4.0 to v4.0更改为可以解决此问题。
标签: visual-studio-2010 msbuild nuget visual-studio-2019