Les assemblys de référence pour le framework «.NETFramework, Version = v4.6.2» sont introuvables


112

Lorsque j'essaye de compiler une solution, j'obtiens l'erreur de construction suivante:

Erreur MSB3644 Les assemblys de référence pour le framework ".NETFramework, Version = v4.6.2" sont introuvables. Pour résoudre ce problème, installez le SDK ou Targeting Pack pour cette version du framework ou recibler votre application vers une version du framework pour laquelle vous avez installé le SDK ou Targeting Pack. Notez que les assemblys seront résolus à partir du Global Assembly Cache (GAC) et seront utilisés à la place des assemblys de référence. Par conséquent, votre assemblage peut ne pas être correctement ciblé pour le cadre que vous souhaitez. 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

J'ai essayé d'installer le SDK .NET Framework 4.6.2, ainsi que le pack de ciblage 4.6, mais les deux erreurs que je l'ai déjà installé. J'ai également essayé d'installer Visual Studio 2017 mais cela donne toujours la même erreur.

Des idées?


4
J'ai vu ce problème disparaître lorsque vous installez le pack développeur 4.5.2 (c'est-à-dire pas le 4.6.2, mais le pack développeur 4.5.2).
Peter Ritchie le

J'ai eu ce problème avec 4.8, pour une raison quelconque, mes fichiers csproj avaient à l' 4.8.0intérieur, ce qui n'est pas le même 4.8qu'apparemment.
Jacek Gorgoń le

Pour la vraie réponse, voir stackoverflow.com/a/58850755/155077
Stefan Steiger

Réponses:



68

Windows -> Rechercher -> Visual Studio Installer -> Modifier -> Composants individuels et vérifier la bonne version


9
Il s'agit d'une solution propre car Visual Studio répertorie toutes les versions pour vous et affiche ce que vous avez actuellement installé et gérera le téléchargement / l'installation.
olive_tree

1
J'ai essayé toutes les solutions ci-dessus et aucune n'a fonctionné. Celui-ci a fait le travail. Merci
Charlie Seligman

Le mien demande la v4.6.1 (assemblages de référence) et montre la v4.6.1 (outils de développement) installée via le programme d'installation ... essayant toujours de comprendre ce qui se passe. ANNULER QUE: Mon problème était qu'aucun des frameworks .NET n'était installé par défaut. Je vous remercie.
Xonatron

1
Cela devrait sérieusement être la meilleure réponse!
Tomáš Hübelbauer

1
Celui-ci est la meilleure réponse!
Himechi90


13

À partir de mai 2019, vous pouvez créer votre projet sur net20 jusqu'à net48 (y compris ne461) sur n'importe quelle machine avec au moins MSBuild ou le SDK .NET Core installé sans avoir besoin du Developer Pack installé.

Si .NET Core SDK est installé sur votre ordinateur, ajoutez le package nuget Microsoft.NETFramework.ReferenceAssemblies à votre projet

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

Le package comprend tous les ReferenceAssemblies de net20 à net48

Ces packages permettent de créer des projets .NET Framework sur n'importe quel ordinateur avec au moins MSBuild ou le SDK .NET Core installé ainsi que d'autres scénarios.

Pour plus de détails: https://github.com/Microsoft/dotnet/tree/master/releases/reference-assemblies


Parfait, fonctionne <ItemGroup Condition = "'$ (TargetFramework)' == 'net20' Ou '$ (TargetFramework)' == 'net40'">
Stefan Steiger

12

J'obtenais exactement la même erreur lors de la construction, sauf que c'était pour ".NETFramework, Version = v4.7.1".

J'ai téléchargé le pack développeur pour 4.7.1 à partir d'ici: https://www.microsoft.com/en-us/download/confirmation.aspx?id=56119

Le pack a installé ces programmes sur la machine cible (mon serveur de build).

  • Kit de développement logiciel (SDK) Microsoft .NET Framework 4.7.1
  • Pack de ciblage Microsoft .NET Framework 4.7.1
  • Pack de ciblage Microsoft .NET Framework 4.7.1 (ENU)

Quand j'ai essayé de construire à nouveau, je n'ai plus eu l'erreur et la construction a réussi.


1
Problème similaire (erreur de serveur de construction). Eu la même erreur mais pour 4.7.1 et cela l'a résolu pour moi.
Brendan le

Idem pour 4.7.2.
LosManos

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.