找不到框架“ .NETFramework,Version = v4.6.2”的参考程序集


112

尝试编译解决方案时,出现以下构建错误:

错误MSB3644找不到框架“ .NETFramework,Version = v4.6.2”的参考程序集。要解决此问题,请为此框架版本安装SDK或Targeting Pack,或将您的应用程序重新定位到已为其安装SDK或Targeting Pack的框架版本。请注意,程序集将从全局程序集缓存(GAC)中解析,并将代替参考程序集。因此,您的程序集可能没有正确地针对您想要的框架。C:\ RPR \ Dev \ Libraries \ Common \ Common.csproj C:\ Program Files(x86)\ Microsoft Visual Studio \ 2017 \ Community \ MSBuild \ 15.0 \ Bin \ Microsoft.Common.CurrentVersion.targets 1111

我尝试安装.NET Framework 4.6.2 SDK和4.6 Targeting Pack,但是我已经安装了这两个错误。我还尝试安装Visual Studio 2017,但仍然会出现相同的错误。

有任何想法吗?


4
当您安装4.5.2开发人员包(即不是4.6.2,而是4.5.2开发人员包)时,我已经看到此问题消失了。
彼得·里奇

我在4.8中遇到了这个问题,由于某种原因,我的csproj文件4.8.0位于内部,这与4.8表面上的看起来不一样。
JacekGorgoń

Answers:



67

Windows->搜索-> Visual Studio安装程序->修改->单个组件并检查正确的版本


9
这是一个干净的解决方案,因为Visual Studio将为您列出所有版本,并显示您当前已安装的版本并管理下载/安装。
olive_tree

1
尝试了以上所有解决方案,但均无效果。这个做了工作。谢谢
查理·塞利格曼

我的要求v4.6.1(参考程序集),它显示了通过安装程序安装的v4.6.1(开发工具)...仍在尝试弄清楚发生了什么。取消:我的问题是,默认情况下根本没有安装任何.NET框架。谢谢。
Xonatron

1
这应该是最重要的答案!
托马什Hübelbauer

这是最好的答案!
Himechi90


13

从2019年5月开始,您可以在至少安装了MSBuild或.NET Core SDK的任何计算机上在net20到net48(包括ne461)上构建项目,而无需安装Developer Pack。

如果您的计算机中安装了.NET Core SDK,则将nuget包Microsoft.NETFramework.ReferenceAssemblies添加到您的项目中

    <ItemGroup>
        <PackageReference Include="Microsoft.NETFramework.ReferenceAssemblies" Version="1.0.0-preview.2">
            <IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
            <PrivateAssets>all</PrivateAssets>
        </PackageReference>     
    </ItemGroup>

该软件包包括从net20到net48的所有ReferenceAssemblies

通过这些软件包,可以在至少装有MSBuild或.NET Core SDK以及其他方案的任何计算机上构建.NET Framework项目。

有关更多详细信息:https : //github.com/Microsoft/dotnet/tree/master/releases/reference-assemblies


优秀的解决方案!
Akash Agarwal

完美,可以正常运行<ItemGroup Condition =“'$(TargetFramework)'=='net20'或'$(TargetFramework)'=='net40'”>
Stefan Steiger

12

我在构建时遇到了完全相同的错误,除了它是针对“ .NETFramework,Version = v4.7.1”的错误。

我从此处下载了适用于4.7.1的开发人员包:https : //www.microsoft.com/zh-cn/download/confirmation.aspx? id =56119

该软件包将这些程序安装在目标计算机(我的构建服务器)上。

  • Microsoft .NET Framework 4.7.1 SDK
  • Microsoft .NET Framework 4.7.1目标包
  • Microsoft .NET Framework 4.7.1 Targeting Pack(ENU)

当我再次尝试构建时,我再也没有收到错误,并且构建成功。


1
类似问题(生成服务器错误)。发生了相同的错误,但对于4.7.1,这为我解决了。
布伦丹

同上4.7.2。
LosManos

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.