The reference assemblies for framework ".NETFramework,Version=v4.6.2" were not found

When trying to compile a solution, I get the following build error:

Error MSB3644 The reference assemblies for framework ".NETFramework,Version=v4.6.2" were not found. To resolve this, install the SDK or Targeting Pack for this framework version or retarget your application to a version of the framework for which you have the SDK or Targeting Pack installed. Note that assemblies will be resolved from the Global Assembly Cache (GAC) and will be used in place of reference assemblies. Therefore your assembly may not be correctly targeted for the framework you intend. 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

I've tried installing the .NET Framework 4.6.2 SDK, as well as the 4.6 Targeting Pack, however both error that I already have it installed. I also tried installing Visual Studio 2017 but it still gives the same error.

Any ideas?


Solution 1:

It turns out that I had installed the .NET Framework v4.6.2, not the Developer Pack for 4.6.2. Doh!

https://www.microsoft.com/en-us/download/details.aspx?id=53321

Solution 2:

Windows -> Search -> Visual Studio Installer -> Modify -> Individual Components and check the right version

Solution 3:

Starting May, 2019 you can build your project on net20 up to net48 (including ne461) any machine with at least MSBuild or the .NET Core SDK installed without the need of Developer Pack installed.

If .NET Core SDK installed in you machine, Add the nuget package Microsoft.NETFramework.ReferenceAssemblies to your project

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

The package include all ReferenceAssemblies starting net20 up to net48

These packages enable building .NET Framework projects on any machine with at least MSBuild or the .NET Core SDK installed plus other scenarios.

For more details: https://github.com/Microsoft/dotnet/tree/master/releases/reference-assemblies

Solution 4:

Installing the 4.6.2 Developer Pack did not work for me.

I had to install .NET Framework 4.6 Targeting Pack

Solution 5:

I was getting the exact same error when building except it was for ".NETFramework,Version=v4.7.1".

I downloaded the Developer pack for 4.7.1 from here: https://www.microsoft.com/en-us/download/confirmation.aspx?id=56119

The pack installed these programs on the target machine (my build server).

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

When I tried building again, I didn't get the error anymore and the build succeeded.