163 votes

Les assemblages de référence pour le cadre ".NETFramework,Version=v4.6.2" n'ont pas été trouvés.

Lorsque j'essaie de compiler une solution, j'obtiens l'erreur de compilation suivante :

Erreur MSB3644 Les assemblages de référence pour le framework ".NETFramework,Version=v4.6.2" n'ont pas été trouvés. Pour résoudre ce problème, installez le SDK ou le Targeting Pack pour cette version du framework ou reciblage de votre application sur une version du framework pour laquelle vous pour laquelle vous avez installé le SDK ou le Targeting Pack. Notez que les assemblages seront résolues à partir du Global Assembly Cache (GAC) et seront utilisées à la à la place des assemblages de référence. Par conséquent, votre assemblage peut ne pas être correctement ciblé pour le framework que vous souhaitez. C:\RPR\Dev\Libraries\Common\Common.csproj C:\Program Fichiers (x86) \Microsoft Visuel 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 4.6 Targeting Pack, mais les deux m'indiquent par erreur qu'il est déjà installé. J'ai également essayé d'installer Visual Studio 2017 mais cela donne toujours la même erreur.

Des idées ?

4 votes

J'ai constaté que ce problème disparaît lorsque vous installez le pack de développement 4.5.2 (c'est-à-dire pas la version 4.6.2, mais le pack de développement 4.5.2).

0 votes

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

0 votes

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

128voto

Cata Hotea Points 448

Windows -> Recherche -> Installateur de Visual Studio -> Modifier -> Composants individuels et vérifier la bonne version

14 votes

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

1 votes

J'ai essayé toutes les solutions ci-dessus et aucune n'a fonctionné. Celle-ci a fait l'affaire. Merci

0 votes

Le mien demande la v4.6.1 (assemblages de référence) et il montre la v4.6.1 (outils de développement) installée via l'installateur... j'essaie toujours de comprendre ce qui se passe. ANNULEZ-LE : Mon problème était qu'aucune partie du cadre .NET n'était installée par défaut. Merci.

110voto

Justin Points 3172

Il s'avère que j'avais installé le .NET Framework v4.6.2, et non le Developer Pack pour 4.6.2. Doh !

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

0 votes

J'ai installé le Dev Pack 462 et je reçois toujours l'avertissement. Dois-je redémarrer ma machine ?

11 votes

J'ai du redémarrer visual studio après l'installation, puis tout va bien

37voto

M.Hassan Points 3885

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

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

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

Le paquet comprend tous les ensembles de référence de net20 à net48.

Ces paquets permettent de construire des projets .NET Framework sur n'importe quelle machine ayant au moins MSBuild ou le .NET Core SDK installé, ainsi que d'autres scénarios.

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

0 votes

Parfait, ça marche <ItemGroup Condition=" '$(TargetFramework)' == 'net20' Or '$(TargetFramework)' == 'net40' ">

0 votes

@M. Hassan Whem J'ai mis en place votre solution, maintenant j'obtiens cette erreur vbc : error BC2017: could not find library 'Microsoft.VisualBasic.dll' [/Sample.vbproj]

0 votes

Quelle est la version de dotnet SDK installée, le cadre du projet ?

19voto

Rubanov Points 1922

L'installation du Developer Pack 4.6.2 n'a pas fonctionné pour moi.

J'ai dû installer .NET Framework 4.6 Targeting Pack

13voto

Jamie Butterworth Points 104

J'ai obtenu 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 construction).

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

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

1 votes

Problème similaire (erreur de serveur de construction). J'ai eu la même erreur mais pour 4.7.1 et cela l'a résolu pour moi.

1 votes

Idem pour la 4.7.2.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X