1
votes

dotnet core 3.0 impossible de localiser le sdk dotnetcore lors de l'ouverture de la solution dans vs

J'essaye de charger le code source pour ASP.NET Core MVC à https://github.com/aspnet/aspnetcore . Cependant, lorsque j'ai cloné le projet, extrait la v3.0.0 et essayé d'ouvrir la solution dans Visual Studio 2019 (v16.3.4), j'ai eu l'erreur suivante pour tous les projets

Impossible de localiser le SDK .NET Core. Vérifiez qu'il est installé et que la version spécifiée dans global.json (le cas échéant) correspond à la version installée

Je me suis assuré que le sdk .net core 3.0 a été téléchargé sur mon ordinateur et que l'exécution de dotnet --info donne les données suivantes:

<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <Description>ASP.NET Core metadata.</Description>
    <TargetFramework>netstandard2.0</TargetFramework>
    <IsAspNetCoreApp>true</IsAspNetCoreApp>
    <IsShippingPackage>true</IsShippingPackage>
    <NoWarn>$(NoWarn);CS1591</NoWarn>
    <GenerateDocumentationFile>true</GenerateDocumentationFile>
    <PackageTags>aspnetcore</PackageTags>
  </PropertyGroup>

</Project>

En regardant dans le fichier .csproj , ils ciblent tous

<TargetFramework>netcoreapp3.0</TargetFramework>

De plus, je me suis assuré que le chemin d'accès au SDK 'C: \ Program Files \ dotnet' est inclus dans ma variable PATH. J'ai essayé d'ajouter un fichier global.json spécifiant le sdk, mais cela ne semblait pas faire de différence.

Une idée de ce qui pourrait causer ce problème?

Éditer

Voici un exemple du fichier csproj

Microsoft.NETCore.App 3.0.0 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]

, et voici le dossier avec tous les SDK sur ma machine. entrez la description de l'image ici


3 commentaires

Fermez et ouvrez VS. Cela a résolu le mien plusieurs fois


dotnet --list-sdks vous si vous exécutez dotnet --list-sdks partir de la ligne de commande? Êtes-vous sûr d'avoir installé le SDK .NET Core lors de l'installation de Visual Studio? Je lancerais le programme d'installation et vérifierais que la charge de travail était incluse.


quand je fais dotnet --list-sdks, il inclut le sdk 3.0 (3.0.100 [C: \ Program Files \ dotnet \ sdk]). De plus, je l'ai ouvert et fermé plusieurs fois avec le même résultat


5 Réponses :


0
votes

Quelques causes possibles:

  • vous devez redémarrer l'ordinateur, car les variables d'environnement sont mises en cache
  • vous devez redémarrer Visual Studio, car Visual Studio met également en cache (fermez toutes les instances de celui-ci)
  • vous avez installé la version 64 bits du SDK, mais vous avez besoin du SDK 32 bits, ou vice-versa.
  • vous avez installé un ancien sdk d'aperçu et devez activer les versions d'aperçu dans les options de Visual Studio (ou télécharger le SDK sans aperçu puisqu'il s'agit de RTM)

Vous pouvez essayer un truc que j'ai appris:
Ouvrez une invite de ligne de commande et tapez env
obtenir la variable d'environnement de chemin

Il aurait dû

C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\devenv.exe

dedans.

Maintenant, remplacez C:\Program Files\dotnet\; avec D:\Programs\LessPortableApps\dotnet\ , où D:\Programs\LessPortableApps\dotnet\ est le dossier dans lequel vous placez vos dotnet-sdks.

Ensuite, définissez la variable d'environnement de chemin SET PATH="bla" sur votre nouveau chemin, avec les dossiers dotnet remplacés.

Et puis démarrez Visual Studio à partir de l'invite de commande, par exemple:

C:\Program Files\dotnet\;
C:\Program Files (x86)\dotnet\;

De cette façon, vous pouvez utiliser les SDK .NET lorsque vous ne disposez pas des droits d'administrateur pour les installer.

Encore une chose:
.NET Core 3.0 nécessite Visual Studio 2019, si vous avez 2017, vous ne pouvez l'utiliser que si msbuild est installé (même version que VS2019).

Pour installer le dernier MSBuild autonome (à partir de 2019), accédez à: https://www.visualstudio.com/downloads/ et faites défiler jusqu'à «Outils pour Visual Studio 2017» et choisissez «Créer des outils pour Visual Studio 2019» (c'est pour les utilisateurs qui ne veulent pas de l'IDE complet)

Lien direct


3 commentaires

J'ai essayé tout ce qui précède, mais rien ne semble fonctionner. Je me demande s'il existe d'autres informations de diagnostic disponibles - par exemple, y a-t-il un journal de compilation quelque part sur mon ordinateur pour l'instruction `` Impossible de localiser le SDK .NET Core '' où je peux vérifier les emplacements que Visual Studio a vérifiés?


Juste pour fournir plus d'informations, j'ai ajouté à mon message le fichier csproj et référençant le SDK, ainsi que le dossier contenant le sdk. Existe-t-il un moyen de savoir comment Visual Studio recherche le sdk et pourquoi il ne peut pas être trouvé dans ce dossier


@ Daryl1976: Avez-vous installé Visual Studio 2017? Si oui, vous devrez peut-être mettre à jour vers 2019 et appliquer les dernières mises à jour.



1
votes

J'ai le même problème et j'ai trouvé la solution; J'espère que vous avez le même problème que moi.

cmd -> entrée dotnet --info
copier le "chemin de base" de .Net Core
Ajoutez-le simplement à la variable Path de votre système.

Le nom de la variable est MSBuildSdksPath

Plus de détails, vous pouvez vérifier ceci https://github.com/aspnet/Announcements/issues/231


0 commentaires

1
votes

Pour moi, j'ai téléchargé la branche principale dans un fichier compressé à partir de https://github.com/dotnet/aspnetcore . Ensuite, j'ai rencontré le même problème en essayant de charger AspNetCore.sln dans VS Code. (Tous les projets de la solution n'ont pas pu se charger).

En utilisant dotnet --info, je vois que je les ai installés:

{
  "sdk": {
    "version": "6.0.100-alpha.1.20523.3"
  },
  "tools": {
    "dotnet": "6.0.100-alpha.1.20523.3",
    ...other settings...
  }
}

Cependant, la version du SDK spécifiée dans global.json dans le dossier solution utilise 6.0.100-alpha.1.20523.3.

3.1.201 [C:\Program Files\dotnet\sdk]
3.1.402 [C:\Program Files\dotnet\sdk]
3.1.403 [C:\Program Files\dotnet\sdk]

J'ai donc changé les deux paramètres en "3.1.403". Lors du rechargement de la solution, tous les projets se sont chargés correctement.


1 commentaires

Belle solution lorsque vous ne voulez parcourir que le code source



0
votes

0 commentaires

0
votes

0 commentaires