フレームワーク「.NETFramework、Version = v4.6.2」の参照アセンブリが見つかりませんでした


112

ソリューションをコンパイルしようとすると、次のビルドエラーが発生します。

エラーMSB3644フレームワーク ".NETFramework、Version = v4.6.2"の参照アセンブリが見つかりませんでした。これを解決するには、このフレームワークバージョンのSDKまたはターゲットパックをインストールするか、SDKまたはターゲットパックがインストールされているフレームワークのバージョンにアプリケーションを再ターゲットします。アセンブリはグローバルアセンブリキャッシュ(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開発者パック)をインストールすると、この問題が解消されることを確認しました。
Peter Ritchie 2017年

私は4.8でこの問題を抱えていましたが、何らかの理由でcsprojファイルが4.8.0内部にありましたが、これは4.8明らかに同じではありません。
JacekGorgoń

実際の回答については、stackoverflow.com
Stefan Steiger

回答:


96

私がインストールしたのは.NET Framework v4.6.2ではなく、4.6.2のDeveloper Packでした。どー!

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


Dev Pack 462をインストールしましたが、それでも警告が表示されます。マシンを再起動する必要がありますか?
ジム

5
インストール後にビジュアルスタジオを再起動する必要がありましたが、その後は
問題ありませんでした

67

Windows->検索-> Visual Studioインストーラー->変更->個々のコンポーネントと正しいバージョンを確認


9
Visual Studioがすべてのバージョンを一覧表示し、現在インストールされているものを示し、ダウンロード/インストールを管理するため、これはクリーンなソリューションです。
olive_tree

1
上記のすべてのソリューションを試しましたが、どれもうまくいきませんでした。これは仕事をしました。ありがとう
チャーリーセリグマン

鉱山はv4.6.1(参照アセンブリ)を求めており、インストーラーを介してインストールされたv4.6.1(開発ツール)が表示されています。キャンセル:私の問題は、.NETフレームワークがデフォルトでまったくインストールされていないことでした。ありがとうございました。
Xonatron、

1
これは真剣にトップの答えになるはずです!
トマーシュHübelbauer

これが一番の答えです!
Himechi90


12

".NETFramework、Version = v4.7.1"を除いて、ビルド時にまったく同じエラーが発生しました。

ここから4.7.1の開発者パックをダウンロードしました:https : //www.microsoft.com/en-us/download/confirmation.aspx?id=56119

パックはこれらのプログラムをターゲットマシン(私のビルドサーバー)にインストールしました。

  • Microsoft .NET Framework 4.7.1 SDK
  • Microsoft .NET Framework 4.7.1ターゲットパック
  • Microsoft .NET Framework 4.7.1ターゲットパック(ENU)

再度ビルドを試みたところ、エラーは発生せず、ビルドは成功しました。


1
同様の問題(サーバーのビルドエラー)。同じエラーが発生しましたが、4.7.1でこれで解決しました。
ブレンダン

4.7.2の同上。
LosManos

12

2019年5月以降、開発パックをインストールせずに、少なくともMSBuildまたは.NET Core SDKがインストールされているマシンであれば、net20からnet48(ne461を含む)までプロジェクトをビルドできます。

マシンに.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までのすべてのReferenceAssemblyが含まれています

これらのパッケージにより、少なくともMSBuildまたは.NET Core SDKがインストールされた任意のマシンに加えて、他のシナリオで。

詳細:https : //github.com/Microsoft/dotnet/tree/master/releases/reference-assemblies


優れたソリューション!
Akash Agarwal

完璧、機能<ItemGroup Condition = "'$(TargetFramework)' == 'net20' Or '$(TargetFramework)' == 'net40'">
ステファンシュタイガー

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.